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 Console - Provides Screen/Window management & drawing.
* Unit: console
* Description: Basic Console Output @author(Kieron Morris <kjm@kieronmorris.me>)
************************************************ }
* Author: K Morris
* Contributors:
************************************************ }
unit console; unit console;
interface interface
@ -19,6 +15,7 @@ uses
tracer; tracer;
type type
{ 4-bit nibble representing a color. }
TColor = ( Black = $0, TColor = ( Black = $0,
Blue = $1, Blue = $1,
Green = $2, Green = $2,
@ -36,6 +33,7 @@ type
lYellow = $E, lYellow = $E,
lWhite = $F ); lWhite = $F );
{ Window Manager Events. }
TEventType = ( EVENT_DRAW, TEventType = ( EVENT_DRAW,
EVENT_MOUSE_CLICK, EVENT_MOUSE_CLICK,
EVENT_MOUSE_MOVE, EVENT_MOUSE_MOVE,
@ -47,62 +45,269 @@ type
EVENT_FOCUS, EVENT_FOCUS,
EVENT_LOSE_FOCUS ); EVENT_LOSE_FOCUS );
{ Default Buffer Specific }
{
Initialize the Frame Buffer & Window Manager ready for use.
}
procedure init(); procedure init();
{
Clear the Frame Buffer.
}
procedure clear(); 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); procedure setdefaultattribute(attribute : uint32);
{
@bold(Text mode only!) - Disable the cursor/text-caret.
@deprecated
}
procedure disable_cursor; 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); procedure writestringlnex(str: PChar; attributes: uint32);
{
Write a 32-bit value to the console.
@param(i A 32-bit value.)
}
procedure writeint(i: Integer); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); 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); procedure writebin32lnex(b : uint32; attributes: uint32);
{
Move the caret back 1 position and remove the character within the cell the caret occupies.
}
procedure backspace; 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; function combinecolors(Foreground, Background : uint16) : uint32;
{ Increment the cursor one cell to the right (x+1). }
procedure _increment_x(); procedure _increment_x();
{ Increment the cursor one cell down (y+1). }
procedure _increment_y(); 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(); 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(); procedure _newline();
{ WND Specific }
{ Window Specific }
procedure clearWND(WND : uint32); procedure clearWND(WND : uint32);
procedure clearWNDEx(WND : uint32; attributes : uint32); procedure clearWNDEx(WND : uint32; attributes : uint32);
@ -193,20 +398,19 @@ procedure _MouseClick(left : boolean);
procedure setWindowColors(colors : uint32); procedure setWindowColors(colors : uint32);
function getWindowColorPtr : puint32; 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 implementation
uses
lmemorymanager, strings, keyboard, serial, terminal;
const
MAX_WINDOWS = 255;
DefaultWND = 0;
type type
{ Properties pertaining to the raw screen matrix.}
TConsoleProperties = record TConsoleProperties = record
Default_Attribute : uint32; Default_Attribute : uint32; //Attribute (Colors) to use when no override defined.
end; end;
{ Unrasterized representation of a character.}
TCharacter = bitpacked record TCharacter = bitpacked record
Character : Char; Character : Char;
attributes : uint32; attributes : uint32;
@ -214,6 +418,7 @@ type
end; end;
PCharacter = ^TCharacter; PCharacter = ^TCharacter;
{ Unrasterized screen matrix. }
TVideoMemory = Array[0..1999] of TCharacter; TVideoMemory = Array[0..1999] of TCharacter;
PVideoMemory = ^TVideoMemory; PVideoMemory = ^TVideoMemory;
@ -314,6 +519,9 @@ var
MouseCursorEnabled : Boolean = true; MouseCursorEnabled : Boolean = true;
OpenTerminal : Boolean = false; OpenTerminal : Boolean = false;
uses
lmemorymanager, strings, keyboard, serial, terminal;
function getWindowColorPtr : puint32; function getWindowColorPtr : puint32;
begin begin
getWindowColorPtr:= @Window_Border.Attributes; getWindowColorPtr:= @Window_Border.Attributes;

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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