From 02a2dcac1a41872e1fec6d3b37ddd7ecae57eae4 Mon Sep 17 00:00:00 2001 From: "Christian A. Weber" Date: Thu, 16 Apr 1992 23:00:42 +0000 Subject: Initial revision --- Documentation/GameExec.doc | 158 +++++++++++++++++++++++++++++++++++++++++++++ Documentation/README | 70 ++++++++++++++++++++ 2 files changed, 228 insertions(+) create mode 100644 Documentation/GameExec.doc create mode 100644 Documentation/README (limited to 'Documentation') diff --git a/Documentation/GameExec.doc b/Documentation/GameExec.doc new file mode 100644 index 0000000..e9818bf --- /dev/null +++ b/Documentation/GameExec.doc @@ -0,0 +1,158 @@ +GAME EXEC - The ultimate Amiga operating system for game development +--------- + +Version 4.4, 16-Apr-92 + +© 1987-92 Christian A. Weber, Christian B. Haller, René Straub, Roman Werner + + + + *** Erlaubte Einträge in MyExecBase: + + APTR meb_SuperStackUpper ; SuperStack am Anfang (READ ONLY!) + WORD meb_AttnFlags ; Kopie von ExecBase->AttnFlags + WORD meb_SystemBplcon0 ; Kopie von gfxbase->system_bplcon0 + BYTE meb_VBlankFrequency ; Kopie von ExecBase->VBlankFrequency + BYTE meb_expad2 + + BYTE meb_ActualKey ; RawKeyCode + BYTE meb_ActualQualifiers ; Qualifier-Bits, (BitNr=KeyCode-$60) + BYTE meb_ActualASCIIKey ; ASCII-Code + BYTE meb_CheatFlag ; >0 falls Cheat mode on + + STRUCT meb_BobList,lh_SIZEOF ; für die Bobroutine + APTR meb_TripleScreen ; für die Bobroutine + WORD meb_SignalSet ; für die Bobroutine + + LONG meb_UserData1 ; Frei für den User, am Anfang 0 + LONG meb_UserData2 ; Frei für den User, am Anfang 0 + + STRUCT meb_exreserved,6 ; + pad auf LONG, NICHT benutzen! + + *** Level 3 Interrupt-Vektoren, zum Patchen oder 0 reinschreiben + + UWORD meb_VBLIntPad + UWORD meb_VBLIntJump + APTR meb_VBLIntVector + + UWORD meb_CopperIntPad + UWORD meb_CopperIntJump + APTR meb_CopperIntVector + + *** Cia-Interrupt-Vektoren, zum Patchen oder 0 reinschreiben + + APTR meb_CiaATimerAVector + APTR meb_CiaATimerBVector + APTR meb_CiaAAlarmVector + APTR meb_CiaASerialVector + APTR meb_CiaAFlagVector + + APTR meb_CiaBTimerAVector + APTR meb_CiaBTimerBVector + APTR meb_CiaBAlarmVector + APTR meb_CiaBSerialVector + APTR meb_CiaBFlagVector + + + *** System-Funktionen (use at your own risk!) + + ULONG meb_SecretMagic ; PRIVAT + FUNCTION InitExec ; (ExecEvent) (CRP) + FUNCTION ColdReboot ; () () + FUNCTION InitChipMem ; (Address,Size) (A0/D0) + FUNCTION InitFastMem ; (Address,Size) (A0/D0) + FUNCTION InitDisk ; (Product) (D0) + FUNCTION InitKey ; () () + FUNCTION SetCache ; (NewCacheBits) (D0) + + *** Debug-Funktionen + + FUNCTION Debug ; () () + + *** Speicherverwaltung + + FUNCTION AllocMem ; (Amount) (D0) + FUNCTION AllocClearMem ; (Amount) (D0) + FUNCTION AllocFastMem ; (Amount) (D0) + FUNCTION AllocFastClearMem ;(Amount) (D0) + FUNCTION FreeMem ; (Address) (A1) + FUNCTION AvailMem ; () () + FUNCTION AvailFastMem ; () () + FUNCTION CheckMem ; () () + FUNCTION CopyMem ; (Src,Dest,Len) (A0/A1/D0) + FUNCTION CopyMemQuick ; (Src,Dest,Len) (A0/A1/D0) + FUNCTION ClearMem ; (Address,Len) (A0/D0) + + *** Semaphoren + + FUNCTION Disable ; () () + FUNCTION Enable ; () () + FUNCTION OwnBlitter ; () () + FUNCTION DisownBlitter ; () () + + *** Listenverwaltung + + FUNCTION NewList ; (List) (A0) + FUNCTION Enqueue ; (List,Node) (A0/A1) + FUNCTION Remove ; (Node) (A1) + FUNCTION AddHead ; (List,Node) (A0/A1) + FUNCTION AddTail ; (List,Node) (A0/A1) + FUNCTION RemHead ; (List) (A0) + + *** Tastatur + + FUNCTION GetKey ; () () + FUNCTION WaitKey ; () () + FUNCTION FlushKeyBuf ; () () + FUNCTION SetMap ; (KeyMap oder 0) (A0) + FUNCTION SetResetHandler ; (Handler) (A0) + FUNCTION SetCheatText ; (RawKeyCodes) (A0) + + *** Ausgabe + + FUNCTION RawDoFmt ; (wie normal :-)) (...) + FUNCTION RawPrintf ; (Stack) (...) + FUNCTION PlayCDTrack ; (TrackNumber) (D0) + FUNCTION WaitCDTrack ; (nüt) () + + *** Zufall + + FUNCTION Randomize ; (Value1,Value2) (D0/D1) + FUNCTION Random ; (Limit) (D0) + + *** Disk-Routinen + + FUNCTION SetNoDiskHandler ;(Routine) (A0) + FUNCTION ReadFile ; (Name,Address) (D0/A0) + FUNCTION WriteFile ; (Name,Address) (D0/A0) + FUNCTION LoadFile ; (Name) (D0) + FUNCTION LoadFastFile ; (Name) (D0) + FUNCTION LoadSeg ; (Name) (D0) + FUNCTION UnLoadSeg ; (Segment) (A1) + FUNCTION BufReadFile ; (Name,Address (D0/A0) + FUNCTION BufLoadFile ; (Name) (D0) + FUNCTION DeleteFileNode ; (Name) (D0) + FUNCTION DeleteFileList ; () () + FUNCTION SendPacket ; (Packet) (A0) + + *** Bob-Routinen + + FUNCTION WaitBlit ; (Custom) (A5) + FUNCTION InitDrawBob ; (BitMap) (A0) + FUNCTION AddBob ; (NewBob) (A1) + FUNCTION RemBob ; (Bob) (A0) + FUNCTION RemAllBobs ; () () + FUNCTION RestoreBobList ; (BitMap) (A1) + FUNCTION DrawBobList ; (BitMap) (A1) + FUNCTION RestoreOneBob ; (Bob,BitMap) (A0/A1) + FUNCTION DrawOneBob ; (Bob,BitMap) (A0/A1) + FUNCTION AnimateOneBob ; (Bob) (A0) + FUNCTION MoveOneBob ; (Bob) (A0) + FUNCTION TestPoint ; (X,Y) (D0/D1) + FUNCTION SetMovePrg ; (Bob,MPrg,Speed,Step) (A0/A1/D0/D1) + FUNCTION SetAnimPrg ; (Bob,APrg,Speed) (A0/A1/D0) + FUNCTION SetGlobalClip ; (X,Y) (D0/D1) + FUNCTION HandleCollision ; () () + FUNCTION CollOneBob ; (Bob) (A0) + FUNCTION FlashBob ; (Bob,Time,Color) (A0/D0/D1) + FUNCTION GetBobData ; (Bob) (A0)->A2 diff --git a/Documentation/README b/Documentation/README new file mode 100644 index 0000000..264a52b --- /dev/null +++ b/Documentation/README @@ -0,0 +1,70 @@ +GAME EXEC - The ultimate Amiga operating system for game development +--------- + +Version 4.4, 16-Apr-92 + +© 1987-92 Christian A. Weber, Christian B. Haller, René Straub, Roman Werner + + +Features +-------- + +- Powerful debugging function, such as debug output to serial port or calling + ROMCrack, the ultimate Kickstart-based monitor/disassembler by SCA + +- Memory managment (Allocate, clear, copy Chip + Fast mem) + +- Semaphores (Disable/Enable interrupts, Own/Disown blitter in System mode) + +- Linked List management + +- Keyboard handler including support for custom keymaps + +- Output formatting (printf-style) + +- Optional CDTV functions: play audio tracks + +- Random number generator + +- Powerful interrupt-driven floppy disk routines supporting up to 4 dives + supporting PowerPacker-compressed files and loading in the background + +- BOBOL® the ultimate Bob Animation System: Bob rendering, double/triple + buffering, Animation, collision testing, clipping etc. using a powerful + control languange + + +Versions +-------- + +There are 3 versions of Game Exec: + +- Standard version: Runs completely without Amiga OS + +- System version (SysStart): runs within Amiga OS (used for development) + this version optionally supports the CDTV + +- Ram version (runs without Amiga OS, but uses a FFS ram disk instead of floppy) + + +Modification History +-------------------- + +18-May-89 CHW Recreated this file! +20-Jun-89 CHW Supports 1MB CHIP RAM +29-Jun-89 CHW Auf Genim2 umgeschrieben +22-Aug-89 CHW AddHead() added +27-Aug-89 CHW AddHead() rettet nun die Register (!^%#$@) +13-Sep-89 CHW CopyMem() rettet nun D0 (grmbl!) +06-Nov-89 CHW SetCache() added +27-Nov-89 CHW FastMem support routines added +04-Feb-90 CHW Zero-Handler & other Guru handlers added +11-Feb-90 CHW Supervisor-Stack ist jetzt im FAST-RAM +28-Mar-90 CHW ColdReboot() implementiert, ABORT springt dahin +18-Sep-90 CHW CheckMem() implementiert und so +20-Oct-90 CHW Config-File entfernt, MainPrg muss am Anfang sein +30-Dec-90 CHW Gecrunchte Files werden automatisch entcruncht +06-Jan-91 CHH BufLoadFile testet ob genug RAM vorhanden ist +11-Feb-91 CHH BufReadFile eingebaut +18-Feb-91 CHW Multitasking-fähige Version +06-May-91 CHW Diskroutine kann jetzt schreiben -- cgit v1.2.3