Comments now conform to PasDoc specifications.

git-svn-id: https://spexeah.com:8443/svn/Asuro@749 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c
This commit is contained in:
kieron 2018-10-12 20:49:03 +00:00
parent 877ef01b80
commit db58264fa6
81 changed files with 631 additions and 430 deletions

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: console
* Description: Basic Console Output
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Console - Provides Screen/Window management & drawing.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit console;
interface
@ -19,6 +15,7 @@ uses
tracer;
type
{ 4-bit nibble representing a color. }
TColor = ( Black = $0,
Blue = $1,
Green = $2,
@ -36,6 +33,7 @@ type
lYellow = $E,
lWhite = $F );
{ Window Manager Events. }
TEventType = ( EVENT_DRAW,
EVENT_MOUSE_CLICK,
EVENT_MOUSE_MOVE,
@ -47,62 +45,269 @@ type
EVENT_FOCUS,
EVENT_LOSE_FOCUS );
{ Default Buffer Specific }
{
Initialize the Frame Buffer & Window Manager ready for use.
}
procedure init();
{
Clear the Frame Buffer.
}
procedure clear();
{
Set the default set of attributes to be used when drawing to the screen.
@param(attribute A 32-bit value representing the Foreground & Background colors.)
}
procedure setdefaultattribute(attribute : uint32);
{
@bold(Text mode only!) - Disable the cursor/text-caret.
@deprecated
}
procedure disable_cursor;
{
Write a single 8-bit character to the screen.
@param(character An 8-bit value representing an ASCII character.)
}
procedure writechar(character : char);
{
Write a single 8-bit character to the screen, followed by starting a new line.
@param(character An 8-bit value representing an ASCII character.)
}
procedure writecharln(character : char);
{
Write a single 8-bit character to the screen, specifying custom color attributes.
@param(character An 8-bit value representing an ASCII character.)
@param(attributes A 32-bit value representing the colors for the background and foreground.)
}
procedure writecharex(character : char; attributes: uint32);
{
Write a single 8-bit character to the screen, followed by starting a new line, specifying custom color attributes.
@param(character An 8-bit value representing an ASCII character.)
@param(attributes A 32-bit value representing the colors for the background and foreground.)
}
procedure writecharlnex(character : char; attributes: uint32);
{
Simple console write for debugging.
@param(identifier A NULL terminated string with the name of the module printing the output.)
@param(str A NULL terminated string with the debug message.)
}
procedure Output(identifier : PChar; str : PChar);
{
Simple console writeln for debugging.
@param(identifier A NULL terminated string with the name of the module printing the output.)
@param(str A NULL terminated string with the debug message.)
}
procedure Outputln(identifier : PChar; str : PChar);
{
Write a NULL terminated string to the console.
@param(str A NULL terminated string with the debug message.)
}
procedure writestring(str: PChar);
{
Write a NULL terminated string to the console, followed by a new-line.
@param(str A NULL terminated string with the debug message.)
}
procedure writestringln(str: PChar);
{
Write a NULL terminated string to the console, with the specified attributes.
@param(str A NULL terminated string with the debug message.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writestringex(str: PChar; attributes: uint32);
{
Write a NULL terminated string + new-line to the console, with the specified attributes.
@param(str A NULL terminated string with the debug message.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writestringlnex(str: PChar; attributes: uint32);
{
Write a 32-bit value to the console.
@param(i A 32-bit value.)
}
procedure writeint(i: Integer);
{
Write a 32-bit value to the console followed by a new-line.
@param(i A 32-bit value.)
}
procedure writeintln(i: Integer);
{
Write a 32-bit value to the console, with the specified attributes.
@param(i A 32-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writeintex(i: Integer; attributes: uint32);
{
Write a 32-bit value + new-line to the console, with the specified attributes.
@param(i A 32-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writeintlnex(i: Integer; attributes: uint32);
{
Write an 8-bit Hex Pair to the console.
@param(b An 8-bit value.)
}
procedure writehexpair(b : uint8);
{
Write a 32-bit value as Hex Pairs to the console.
@param(i A 32-bit value.)
}
procedure writehex(i: DWORD);
{
Write a 32-bit value as Hex Pairs to the console, followed by a new-line.
@param(i A 32-bit value.)
}
procedure writehexln(i: DWORD);
{
Write a 32-bit value as Hex Pairs to the console, with the specified attributes.
@param(b A 32-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writehexex(i : DWORD; attributes: uint32);
{
Write a 32-bit value as Hex Pairs + new-line to the console, with the specified attributes.
@param(b A 32-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writehexlnex(i: DWORD; attributes: uint32);
{
Write an 8-bit value as binary to the console.
@param(b An 8-bit value.)
}
procedure writebin8(b : uint8);
{
Write an 8-bit value as binary to the console, followed by a new-line.
@param(b An 8-bit value.)
}
procedure writebin8ln(b : uint8);
{
Write an 8-bit value as binary to the console, with the specified attributes.
@param(b An 8-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writebin8ex(b : uint8; attributes: uint32);
{
Write an 8-bit value as binary + new-line to the console, with the specified attributes.
@param(b An 8-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writebin8lnex(b : uint8; attributes: uint32);
{
Write a 16-bit value as binary to the console.
@param(b A 16-bit value.)
}
procedure writebin16(b : uint16);
{
Write an 16-bit value as binary to the console, followed by a new-line.
@param(b A 16-bit value.)
}
procedure writebin16ln(b : uint16);
{
Write a 16-bit value as binary to the console, with the specified attributes.
@param(b A 16-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writebin16ex(b : uint16; attributes: uint32);
{
Write a 16-bit value as binary + new-line to the console, with the specified attributes.
@param(b A 16-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writebin16lnex(b : uint16; attributes: uint32);
{
Write a 32-bit value as binary to the console.
@param(b A 32-bit value.)
}
procedure writebin32(b : uint32);
{
Write an 32-bit value as binary to the console, followed by a new-line.
@param(b A 32-bit value.)
}
procedure writebin32ln(b : uint32);
{
Write a 32-bit value as binary to the console, with the specified attributes.
@param(b A 32-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writebin32ex(b : uint32; attributes: uint32);
{
Write a 32-bit value as binary + new-line to the console, with the specified attributes.
@param(b A 32-bit value.)
@param(attributes A 32-bit representation of the background/foreground colors.)
}
procedure writebin32lnex(b : uint32; attributes: uint32);
{
Move the caret back 1 position and remove the character within the cell the caret occupies.
}
procedure backspace;
{
Combine two 16-bit values representing Foreground and Background respectively, into a 32-bit value representing an attribute.
@param(Foreground A 16-bit value representing the foreground color.)
@param(Background A 16-bit value representing the background color.)
@returns(A 32-bit value representing an attribute set. (uint32) )
}
function combinecolors(Foreground, Background : uint16) : uint32;
{ Increment the cursor one cell to the right (x+1). }
procedure _increment_x();
{ Increment the cursor one cell down (y+1). }
procedure _increment_y();
procedure _safeincrement_y();
{ Increment the cursor one cell to the right (x+1), wrapping to the next line and performing a Y-Axis scroll when when needed. }
procedure _safeincrement_x();
{ Increment the cursor one cell down (y+1), performing a Y-Axis roll when when needed. }
procedure _safeincrement_y();
{ Increment the cursor one cell down and reposition it at the first X Cell (y+1, x=0),performing a Y-Axis scroll when needed. }
procedure _newline();
{ WND Specific }
{ Window Specific }
procedure clearWND(WND : uint32);
procedure clearWNDEx(WND : uint32; attributes : uint32);
@ -193,20 +398,19 @@ procedure _MouseClick(left : boolean);
procedure setWindowColors(colors : uint32);
function getWindowColorPtr : puint32;
const
MAX_WINDOWS = 255; //<Maximum number of Windows open.
DefaultWND = 0; //<The Window assigned for output when no Window is specified. (Default).
implementation
uses
lmemorymanager, strings, keyboard, serial, terminal;
const
MAX_WINDOWS = 255;
DefaultWND = 0;
type
{ Properties pertaining to the raw screen matrix.}
TConsoleProperties = record
Default_Attribute : uint32;
Default_Attribute : uint32; //Attribute (Colors) to use when no override defined.
end;
{ Unrasterized representation of a character.}
TCharacter = bitpacked record
Character : Char;
attributes : uint32;
@ -214,6 +418,7 @@ type
end;
PCharacter = ^TCharacter;
{ Unrasterized screen matrix. }
TVideoMemory = Array[0..1999] of TCharacter;
PVideoMemory = ^TVideoMemory;
@ -314,6 +519,9 @@ var
MouseCursorEnabled : Boolean = true;
OpenTerminal : Boolean = false;
uses
lmemorymanager, strings, keyboard, serial, terminal;
function getWindowColorPtr : puint32;
begin
getWindowColorPtr:= @Window_Border.Attributes;

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: ContextSwitcher
* Description: Switches context between processes
* when preempted by the scheduler.
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
ContextSwitcher - Switch Process Contexts when preempted.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit contextswitcher;
interface

View File

@ -1,3 +1,8 @@
{
CPU - CPU Structures & Utility/Capabilities Functions.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit cpu;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Bus->EHCI - Enhanced Host Controller Interface Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit EHCI;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Bus->OHCI - Open Host Controller Interface Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit OHCI;
interface

View File

@ -1,12 +1,9 @@
{ ************************************************
* Asuro
* Unit: Drivers/PCI
* Description: PCI Driver
************************************************
* Author: Aaron Hance
* Contributors: Kieron Morris
************************************************ }
{
Driver->Bus->PCI - Peripheral Component Interconnect Driver.
@author(Aaron Hance <ah@aaronhance.me>)
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit PCI;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Bus->UHCI - Universal Host Controller Interface Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit UHCI;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Bus->USB - Universal Serial Bus Driver/Interface.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit USB;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Bus->XHCI - eXtensible Host Controller Interface Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit XHCI;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Exp->TestDriver - Dummy Driver For Testing.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit testdriver;
interface

View File

@ -1,12 +1,9 @@
{ ************************************************
* Asuro
* Unit: Drivers/isr33
* Description: Keyboard interrupt
************************************************
* Author: Aaron Hance
* Contributors: K Morris
************************************************ }
{
Driver->HID->PS2_KEYBAORD_ISR - PS2 ISR Hook & Driver.
@author(Aaron Hance <ah@aaronhance.me>)
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit PS2_KEYBOARD_ISR;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/keyboard
* Description: Keyboard driver
************************************************
* Author: Aaron Hance
* Contributors:
************************************************ }
{
Driver->HID->Keyboard - Keyboard Driver.
@author(Aaron Hance <ah@aaronhance.me>)
}
unit keyboard;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/mouse
* Description: Mouse Driver
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Driver->HID->Mouse - Mouse Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit mouse;
interface

View File

@ -1,11 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/drivertypes
* Description: types shared between drivers
************************************************
* Author: Aaron Hance
* Contributors:
************************************************ }
{
Driver->Include->DriverTypes - Structs & Data Shared Across Drivers.
@author(Aaron Hance <ah@aaronhance.me>)
}
unit drivertypes;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Interface->Serial - Serial Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit serial;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->NetTypes - Structures & Types Shared Across Network Drivers.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit nettypes;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->NetUtils - Helper Functions For Network Drivers.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit netutils;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L1->Net - Network Card<->Driver Interface.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit net;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L2->Eth2 - Ethernet Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit eth2;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L3->ARP - Address Resolution Protocol Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit arp;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L3->IPv4 - Internet Protocol Version 4 Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit ipv4;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L4->ICMP - Internet Control Message Protocol Driver,
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit icmp;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L4->TCP - Transmission Control Protocol Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit tcp;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Net->L4->UDP - User Datagram Protocol Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit udp;
interface

View File

@ -1,3 +1,8 @@
{
Driver->NetDev->E1000 - Intel E1000/I217/82577LM Network Card Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit E1000;
interface

View File

@ -1,3 +1,8 @@
{
Driver->Timers->RTC - Real Time Clock Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit RTC;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/isr32
* Description: 1024hz Timer interrupt
************************************************
* Author: Aaron Hance
* Contributors: K Morris
************************************************ }
{
Driver->Timer->TMR_0_ISR - 1024hz Timer Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit TMR_0_ISR;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/isr40
* Description: 1024/s Timer interrupt
************************************************
* Author: Aaron Hance
* Contributors: K Morris
************************************************ }
{
Driver->Timer->TMR_1_ISR - 1024/s Timer Driver.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit TMR_1_ISR;
interface

View File

@ -1,11 +1,8 @@
{ ************************************************
* Asuro
* Unit: Driver_Management
* Description: Manages Driver Loading
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
DriverManagement - Driver Initialization & Management Interface.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit drivermanagement;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR17
* Description: Alignment Check Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->ACE - Alignment Check Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit ACE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR3
* Description: Breakpoint Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->BPE - Break Point Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit BPE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR10
* Description: Bad TSS Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->BTSSE - Bad TSS Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit BTSSE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR11
* Description: Coprocessor Fault Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->CFE - Coprocessor Fault Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit CFE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR9
* Description: Coprocessor Seg Overrun Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->CSOE - Coprocessor Seg Overruun Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit CSOE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR1
* Description: Debug Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->DBGE - Debug Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit DBGE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR0
* Description: Divide-By-Zero Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->DBZ - Divide By Zero Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit DBZ;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR8
* Description: Double Fault Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->DFE - Double Fault Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit DFE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR13
* Description: General Protection Fault
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->GPF - General Protection Fault.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit GPF;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR4
* Description: Into Detected Overflow Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->IDO - Into Detected Overflow Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit IDOE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR6
* Description: Invalid OPCode Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->IOPE - Invalid OPCode Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit IOPE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR18
* Description: Machine Check Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->MCE - Machine Check Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit MCE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR7
* Description: No Coprocessor Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->NCE - No Coprocessor Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit NCE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR2
* Description: Non-Maskable Interrupt Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->NMIE - Non-Maskable Interrupt Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit NMIE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR5
* Description: Out of Bounds Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->OOBE - Out Of Bounds Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit OOBE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR14
* Description: Page Fault
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->PF - Page Fault.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit PF;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR12
* Description: Stack Fault Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->SFE - Stack Fault Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit SFE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR11
* Description: Segment Not Present Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->SNPE - Segment Not Present Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit SNPE;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/ISR15
* Description: Unknown Interrupt Exception
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Fault->UIE - Unknown Interrupt Exception.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit UIE;
interface

View File

@ -1,3 +1,8 @@
{
Faults - Fault Registration & Detouring.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit faults;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: GDT
* Description: GDT Structure and Implementation
************************************************
* Author: K Morris
* Contributors: A Hance
************************************************ }
{
Global Descriptor Table - Data Structures & Interface.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit gdt;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: IDT
* Description: IDT Structure and Implementation
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Interrupt Descriptor Table - Structures & Interface.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit idt;
interface

View File

@ -1,3 +1,8 @@
{
Include->Asuro - Auto-Generated Version & Compilation Information
@author(Asuro Compilation Script)
}
unit asuro;
interface

View File

@ -1,13 +1,8 @@
{ ************************************************
* Asuro
* Unit: bios_data_area
* Description: Data Structures controlled by
* the BIOS.
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Include->BIOS_Data_Area - Data Structures Controlled by the BIOS.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit bios_data_area;
interface

View File

@ -1,3 +1,8 @@
{
Include->CRC - CRC32 Implementation.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit crc;
interface

View File

@ -1,3 +1,8 @@
{
Include->Fonts - Standard Fonts & Font Masks.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit fonts;
interface

View File

@ -1,3 +1,8 @@
{
Include->Lists - Linked List Data Structures & Helpers.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit lists;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Multiboot
* Description: Mutliboot (GRUB) Structures.
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Include->Multiboot - Multiboot Structures & Access.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit multiboot;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Strings
* Description: Collection of function for string manipulation.
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Include->Strings - String Manipulation.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit strings;
interface

View File

@ -1,12 +1,9 @@
{ ************************************************
* Asuro
* Unit: system
* Description: Standard System Types
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Include->System - Base Types & Structures.
@author(Kieron Morris <kjm@kieronmorris.me>)
@author(Aaron Hance <ah@aaronhance.me>)
}
unit system;
interface

View File

@ -1,3 +1,8 @@
{
Include->Types - Dummy Unit For VM Compatability.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit types;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: util
* Description: Utilities for data manipulation
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Include->Util - Data Manipulation Utlities.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit util;
{$ASMMODE intel}

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: irq
* Description: mapping IRQs
************************************************
* Author: Aaron Hance
* Contributors:
************************************************ }
{
Interrupt Request Line - Initialization & Remapping.
@author(Aaron Hance <ah@aaronhance.me>)
}
unit irq;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: isr
* Description: Stub for ISR Driver Initialization
************************************************
* Author: K Morris
* Contributors: A Hance
************************************************ }
{
ISR Driver - Initialization (stub).
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit isr;
interface

View File

@ -1,11 +1,8 @@
{ ************************************************
* Asuro
* Unit: Drivers/isr_types
* Description: Defines for ISRs (WIP)
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
ISR->ISR_Types - Interrupt Service Routine Structures.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit isr_types;

View File

@ -1,3 +1,8 @@
{
ISR->ISRManager - Interrupt Service Routine Registration, Dispatch & Management.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit isrmanager;
interface

View File

@ -1,12 +1,9 @@
{ ************************************************
* Asuro
* Unit: Kernel
* Description: Main Entry Point for Asuro
************************************************
* Author: K Morris
* Contributors: A Hance
************************************************ }
{
Kernel Main - Main Kernel Entry Point.
@author(Kieron Morris <kjm@kieronmorris.me>)
@author(Aaron Hance <ah@aaronhance.me>)
}
unit kernel;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: LMemoryManager
* Description: Logical Virtual Memory Management
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
LMemoryManager - Logical Memory Management
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit lmemorymanager;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: PMemoryManager
* Description: Physical Memory Management
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
PMemoryManager - Physical Memory Management
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit pmemorymanager;
interface

View File

@ -1,13 +1,8 @@
{ ************************************************
* Asuro
* Unit: ProcessLoader
* Description: Loads a Process and any related
* structers into memory ready for
* execution.
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
ProcessLoader - Process Initialization & Tasking (stub).
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit processloader;
interface

View File

@ -1,3 +1,8 @@
{
Prog->MemView - Live Memory View.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit memview;
interface

View File

@ -1,3 +1,8 @@
{
Prog->NetLog - Network Driver Logs.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit netlog;
interface

View File

@ -1,3 +1,8 @@
{
Prog->Shell - Main Desktop UI.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit shell;
interface

View File

@ -1,3 +1,8 @@
{
Prog->Splash - Asuro Splash Screen.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit splash;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: Terminal
* Description: Interactive shell for the user
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Prog->Terminal - Interactive Command Line Environment.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit terminal;
interface

View File

@ -1,3 +1,8 @@
{
Prog->Themer - Live Desktop Color Picker.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit themer;
interface

View File

@ -1,3 +1,8 @@
{
Prog->VMLog - Virtual Machine Event Log.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit vmlog;
interface

View File

@ -1,3 +1,8 @@
{
Prog->VMState - Live MINJ Virtual Machine State Information.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit vmstate;
interface

View File

@ -1,11 +1,8 @@
{ ************************************************
* Asuro
* Unit: Scheduler
* Description: Schedules Context Switches
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
Scheduler - Schedules Context Switches.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit scheduler;

View File

@ -1,3 +1,8 @@
{
Tracer - Trace stack for debugging method calls.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit tracer;
interface

View File

@ -1,12 +1,8 @@
{ ************************************************
* Asuro
* Unit: tss
* Description: Representation of Kernel Space to
* Enable System Calls Via Interrupts.
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
TSS - Task State Segment (stub).
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit tss;
interface

View File

@ -1,11 +1,8 @@
{ ************************************************
* Asuro
* Unit: VMemoryManager
* Description: Manages Pages of Virtual Memory
************************************************
* Author: K Morris
* Contributors:
************************************************ }
{
VMemoryManager - Virtual Memory Management.
@author(Kieron Morris <kjm@kieronmorris.me>)
}
unit vmemorymanager;