|
The compiler generates 32-bit code, which runs natively in 32-bit protected mode while switching back and forth to 16-bit DOS calls for basic OS support. However, unlike OpenWatcom, it is not truly a zero-based flat model due to preferring NULL pointer protection for better stability. It is currently based upon a variant of the COFF format. It can access up to 4 GB of RAM in pure DOS when using a suitable DPMI host (e.g. CWSDPMI r7 or HDPMI32). Most notably the original Quake for DOS was compiled with DJGPP, as well as other programs such as p7zip, Vim, beye, UPX, NASM, Perl, NetHack, and auxiliary applications within Arachne. |