DJGPP began around 1989 as djgcc, after DJ Delorie challenged the claim that GCC could not run on MS-DOS. He built GCC 1.35 on Unix, replacing operating-system calls and creating tools to convert its output into a 32-bit DOS executable. Because the compiler needed more memory than the machine had, he also developed Go32, an extender with virtual-memory support. GCC 1.37 became the first version built on DOS. Delorie later adapted BSD library code for DOS and added custom routines; the system’s headers were based on different sources, which explains some mismatches between headers and libraries. The name changed to DJGPP when C++ was added.
Early milestones expanded the platform’s reach: version 1.03 became widely distributed, 1.05 was among the first commercially available releases, 1.06 added VCPI support, and 1.10 added DPMI. Version 1.11 introduced DPMIEMU, a step toward the second generation. DJGPP 2 was developed to make the system fully self-bootstrapping, partly in response to Cygnus, which used DJGPP for DOS products; the original Go32 depended on a Borland compiler to build. The new approach used djasm to create a 16-bit startup stub and relied on DPMI, provided by CWSDPMI. DJGPP’s 32-bit environment supported ports and rewrites of software including Quake, Info-ZIP, and GhostScript. Version 2.00 shipped in February 1996, followed by 2.01 in October and 2.02 in December 1998.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.