Initial project import

This commit is contained in:
Agila Forge Importer committed 2026-07-13 11:54:29 +00:00
commit 9af96aa1e1
32 files changed
+187

No files matched your search

+17
View File
@@ -0,0 +1,17 @@
/build/
/bin/
/out/
/target/
*.o
*.obj
*.ali
*.elf
*.map
*.lst
*.img
*.iso
*.log
.vscode/
.idea/
.DS_Store
Thumbs.db
+16
View File
@@ -0,0 +1,16 @@
Agila Open License v1.0
Copyright (c) 2026 Matthew McClung
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software to use, copy, modify, merge, publish, distribute, and
sublicense the software, subject to the following conditions:
1. This license and copyright notice must be preserved.
2. Significant modifications must be clearly identified.
3. The Agila, Flying V, and AGX names and logos may not be used to imply
endorsement or official status without written permission.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT.
+28
View File
@@ -0,0 +1,28 @@
PROJECT := agila-open-kernel
BUILD := build
OBJ := $(BUILD)/obj
BIN := $(BUILD)/bin
GPRBUILD := gprbuild
GPRCLEAN := gprclean
.PHONY: all clean rebuild run help
all:
mkdir -p $(OBJ) $(BIN)
$(GPRBUILD) -P kernel.gpr
clean:
$(GPRCLEAN) -P kernel.gpr || true
rm -rf $(BUILD)
rebuild: clean all
run: all
$(BIN)/main
help:
@echo "Agila Open Kernel"
@echo "make Build the host prototype"
@echo "make run Build and run the host prototype"
@echo "make clean Remove build output"
@echo "make rebuild Clean and rebuild"
View File
Whitespace-only changes.
View File
Whitespace-only changes.
View File
Whitespace-only changes.
View File
Whitespace-only changes.
View File
Whitespace-only changes.
+23
View File
@@ -0,0 +1,23 @@
project Kernel is
for Languages use ("Ada");
for Source_Dirs use
("kernel",
"kernel/console",
"kernel/cpu",
"kernel/memory",
"kernel/scheduler",
"kernel/interrupt",
"kernel/timer");
for Object_Dir use "build/obj";
for Exec_Dir use "build/bin";
for Main use ("main.adb");
package Compiler is
for Default_Switches ("Ada") use
("-gnat2022",
"-gnata",
"-gnatwa");
end Compiler;
end Kernel;
+18
View File
@@ -0,0 +1,18 @@
with Ada.Text_IO;
package body Console is
procedure Initialize is
begin
null;
end Initialize;
procedure Write (Text : String) is
begin
Ada.Text_IO.Put (Text);
end Write;
procedure Write_Line (Text : String) is
begin
Ada.Text_IO.Put_Line (Text);
end Write_Line;
end Console;
+5
View File
@@ -0,0 +1,5 @@
package Console is
procedure Initialize;
procedure Write (Text : String);
procedure Write_Line (Text : String);
end Console;
+6
View File
@@ -0,0 +1,6 @@
package body Cpu is
procedure Initialize is
begin
null;
end Initialize;
end Cpu;
+3
View File
@@ -0,0 +1,3 @@
package Cpu is
procedure Initialize;
end Cpu;
View File
Whitespace-only changes.
View File
Whitespace-only changes.
+6
View File
@@ -0,0 +1,6 @@
package body Interrupt is
procedure Initialize is
begin
null;
end Initialize;
end Interrupt;
+3
View File
@@ -0,0 +1,3 @@
package Interrupt is
procedure Initialize;
end Interrupt;
+26
View File
@@ -0,0 +1,26 @@
with CPU;
with Memory;
with Console;
with Scheduler;
with Interrupt;
with Timer;
package body Kernel is
procedure Start is
begin
CPU.Initialize;
Memory.Initialize;
Console.Initialize;
Interrupt.Initialize;
Timer.Initialize;
Scheduler.Initialize;
Console.Write_Line ("Agila Open Kernel 0.1");
Console.Write_Line ("CPU: initialized");
Console.Write_Line ("Memory: initialized");
Console.Write_Line ("Interrupts: initialized");
Console.Write_Line ("Timer: initialized");
Console.Write_Line ("Scheduler: initialized");
Console.Write_Line ("System ready");
end Start;
end Kernel;
+3
View File
@@ -0,0 +1,3 @@
package Kernel is
procedure Start;
end Kernel;
+6
View File
@@ -0,0 +1,6 @@
with Kernel;
procedure Main is
begin
Kernel.Start;
end Main;
+6
View File
@@ -0,0 +1,6 @@
package body Memory is
procedure Initialize is
begin
null;
end Initialize;
end Memory;
+3
View File
@@ -0,0 +1,3 @@
package Memory is
procedure Initialize;
end Memory;
+6
View File
@@ -0,0 +1,6 @@
package body Scheduler is
procedure Initialize is
begin
null;
end Initialize;
end Scheduler;
+3
View File
@@ -0,0 +1,3 @@
package Scheduler is
procedure Initialize;
end Scheduler;
View File
Whitespace-only changes.
+6
View File
@@ -0,0 +1,6 @@
package body Timer is
procedure Initialize is
begin
null;
end Initialize;
end Timer;
+3
View File
@@ -0,0 +1,3 @@
package Timer is
procedure Initialize;
end Timer;
View File
Whitespace-only changes.
View File
Whitespace-only changes.
View File
Whitespace-only changes.
View File
Whitespace-only changes.
View File
Whitespace-only changes.