Click on a module to see a list of procedures.
NOTE: Almost all procedures have been implemented using the C calling
convention (parameters passed on stack and return value, if any, in EAX), so
very seldom will the inputs/outputs say which register something is being
output in. The calling convention allows any general register except for
ESI and EDI to be clobbered.
Main Program (aura.asm)
Called from loader. Does startup sequence and main game update loop.
Graphics Engines (render.asm)
Contains the voxel and sprite engines. Graphics mode independent except for
one function.
Keyboard Input (kbinput.asm)
Processes keyboard input and makes changes to global variables as necessary.
Network Interface (network.asm)
Interface to networking (TCP/IP, NetBIOS[?], or bots).
Mode-X Graphics (modex.asm)
Modular interface to Mode-X graphics, including screen copying and page
flipping.
VESA Graphics (vesa.asm)
Modular interface to VESA graphics, including availability and mode auto-detection.
Startup Menu (menu.asm)
Menu used to select game type and set some options.
Image Loading and Preprocessing (fileload.asm)
Loads the height map, the texture map, and all textures.
Text Mode Routines (textmode.asm)
Provides text mode routines to display loading sequence.
DPMI Interrupt Interface (dpmi_int.asm)
Provides easy way to execute a software interrupt through DPMI. Used almost
exclusively by the file access functions.
DPMI Memory Interface (dpmi_mem.asm)
Provides easy way to allocate and free various critical memory blocks through
DPMI. Used by the main program and the VESA graphics routines.
File Access Interface (filefunc.asm)
Allows near-transparent file opening, reading, and writing by doing the grunt
work of moving data to DOS through the DPMI transfer buffer.
LUT Generator (lut.asm)
Generates the LookUp Table used by the voxel renderer to do fog.
Math Functions (math.asm)
Generates lookup tables to speed up math functions in the main game loop.
DJGPP Loader (myloader.asm)
Provides the external main function called by DJGPP on program load. Gets
a couple DPMI descriptors and then passes control to the main program.