301 lines
79 KiB
Plaintext
301 lines
79 KiB
Plaintext
[38;5;12m [39m[38;2;255;187;0m[1m[4mAwesome DOS [0m[38;5;14m[1m[4m![0m[38;2;255;187;0m[1m[4mAwesome[0m[38;5;14m[1m[4m (https://awesome.re/badge.svg)[0m[38;2;255;187;0m[1m[4m (https://awesome.re)[0m
|
||
|
||
[38;5;12mFamily of operating systems for x86-based personal computers including IBM PC DOS and MS-DOS that were popular during the 1980s and early 1990s.[39m
|
||
|
||
[38;5;12m (https://github.com/balintkissdev/awesome-dos)[39m
|
||
|
||
[38;5;12mA curated list of references for development of DOS applications and learning[39m
|
||
[38;5;12mabout the system itself. This includes list of compilers, tutorials, videos,[39m
|
||
[38;5;12mlinks to free and paid books and source code to DOS operating systems and DOS[39m
|
||
[38;5;12mgames. The goal of this list is to collect information and act as a starting[39m
|
||
[38;5;12mpoint for someone who wants to start out retro-programming for the DOS[39m
|
||
[38;5;12mplatform.[39m
|
||
|
||
[38;2;255;187;0m[4mContents[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mDevelopment tools[0m[38;5;12m (#development-tools)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mTutorials and programming resources[0m[38;5;12m (#tutorials-and-programming-resources)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mBooks[0m[38;5;12m (#books)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mVideos[0m[38;5;12m (#videos)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSource code[0m[38;5;12m (#source-code)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mOpen source DOS operating systems[0m[38;5;12m (#open-source-dos-operating-systems)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mOpen source DOS libraries[0m[38;5;12m (#open-source-dos-libraries)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mOpen source DOS games[0m[38;5;12m (#open-source-dos-games)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDrivers and emulators[0m[38;5;12m (#drivers-and-emulators)[39m
|
||
|
||
[38;2;255;187;0m[4mDevelopment tools[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mbcc - Bruce's Compiler[0m[38;5;12m (https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos/pkg-html/bcc.html) - Bruce's C compiler is a simple C compiler that produces 8086 assembler for tiny/small memory models.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDJGPP[0m[38;5;12m (http://www.delorie.com/djgpp/) - DJ Delorie's complete 32-bit C/C++ development environment for Intel 80386. Used for Quake.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mGCC IA-16 toolchain[0m[38;5;12m (https://gitlab.com/tkchia/build-ia16/-/releases) - A 16-bit counterpart to DJGPP, a GCC-based toolchain for developing 16-bit (8086 to 80286, a.k.a. IA-16) DOS applications, currently maintained by TK Chia.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mInsight[0m[38;5;12m (https://www.bttr-software.de/products/insight/) - Very small debugger for real-mode DOS programs with Borland's Turbo like UI. Features an i80486 disassembler, and i8086 assembler.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mOpen Watcom[0m[38;5;12m (https://web.archive.org/web/20220627162043/http://www.openwatcom.org/) - Formerly commercial C/C++ development environment for 16- and 32-bit DOS and[39m
|
||
[38;5;12m Windows. The current official version is 1.9. A GitHub fork is also available. Used for Doom I-II, Warcraft I-II, Duke Nukem 3D, Full Throttle, Dark Forces and Retro City Rampage.[39m
|
||
[38;5;12m - The [39m[38;5;14m[1mdocumentation[0m[38;5;12m (https://web.archive.org/web/20220630162351/http://www.openwatcom.org/doc.php) is very valuable in order to understand working with both version 1.9 and the V2 fork.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mArch Wiki page[0m[38;5;12m (https://wiki.archlinux.org/index.php/Open_Watcom)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mOpen Watcom V2[0m[38;5;12m (https://github.com/open-watcom/open-watcom-v2) - GitHub fork which is actively maintained and is[39m
|
||
[38;5;12m ported to 64-bit Windows and Linux.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mTurbo C 2.01[0m[38;5;12m (http://www.doshaven.eu/wp-content/uploads/2014/08/tc201.zip) - C IDE and compiler from Borland first released in 1987.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mTurbo C++ 1.01[0m[38;5;12m (http://www.doshaven.eu/wp-content/uploads/2014/08/tcpp101.zip) - C++ IDE and compiler from Borland released in 1991.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mTurbo C++ 3.0[0m[38;5;12m (https://archive.org/details/tcc_20210425) - C++ IDE and compiler from Borland released in 1992.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mOnline version.[0m[38;5;12m (https://turboc.pages.dev/)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDIV Games Studio 2[0m[38;5;12m (https://archive.org/details/div2_iso) - IDE to develop DOS games in 2d, mode 7 and 3d. Released in 1998.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mOnline version.[0m[38;5;12m (http://js.mikedx.co.uk/DIV1.html)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mT3X[0m[38;5;12m (https://t3x.org/t3x/#t3x7) - A small, portable, procedural, block-structured, recursive, almost typeless, and to some degree object-oriented programming language by Nils M. Holm.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSmallerC[0m[38;5;12m (https://github.com/alexfru/SmallerC.git) - Portable self-hosting C compiler capable of producing executables for a number of platforms, including real and protected mode DOS programs, by Alexei A. Frounze.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSmall-C Toolkit[0m[38;5;12m (https://github.com/humbertocsjr/Small-C.git) - A self-hosting Small-C Compiler Toolkit for DOS(8086) with: K&R C Compiler, Make, Linker, Assembler. First released in 1982 by Jim E. Hendrix.[39m
|
||
|
||
[38;2;255;187;0m[4mMemory managers[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1m386MAX[0m[38;5;12m [39m[38;5;12m(https://github.com/sudleyplace/386MAX)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mMemory[39m[38;5;12m [39m[38;5;12mmanager[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mPCs[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12m386[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mhigher[39m[38;5;12m [39m[38;5;12mCPUs,[39m[38;5;12m [39m[38;5;14m[1mreleased[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mQualitas[0m[38;5;14m[1m [0m[38;5;14m[1mcompany[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1m1992[0m[38;5;12m [39m[38;5;12m(https://winworldpc.com/product/386max/6x).[39m[38;5;12m [39m[38;5;12mSource[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12mreleased[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJune[39m[38;5;12m [39m[38;5;12m2022[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mGitHub[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mGPL-3.0[39m[38;5;12m [39m
|
||
[38;5;12mlicense.[39m
|
||
|
||
[38;2;255;187;0m[4mScripting languages and interpreters for DOS[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mDOjS[0m[38;5;12m (https://github.com/SuperIlu/DOjS) - JavaScript programming environment for MS-DOS, FreeDOS or any DOS-based Windows (like 95, 98, ME).[39m
|
||
[38;5;12m- [39m[38;5;14m[1mLua for DOS[0m[38;5;12m (https://archive.org/details/lua5.3.5) - Online demo of Lua 5.3.5, compiled for MS-DOS on the Intel 80486 processor.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMicropython for FreeDOS[0m[38;5;12m (https://github.com/pohmelie/micropython-freedos) - FreeDOS ad-hoc module for [39m[38;5;14m[1mmicropython[0m[38;5;12m (https://github.com/micropython/micropython).[39m
|
||
[38;5;12m- [39m[38;5;14m[1mperldos[0m[38;5;12m (https://perldoc.perl.org/perldos) - Perl for DOS.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mPythonD[0m[38;5;12m (http://www.caddit.net/pythond/) - Python for DOS, including multi-threading, networking and OpenGL.[39m
|
||
|
||
[38;2;255;187;0m[4mTutorials and programming resources[0m
|
||
|
||
[38;2;255;187;0m[4mHistory[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mThe Life of MS-DOS by Brendan Byers[0m[38;5;12m (https://b13rg.github.io/Life-of-MS-DOS/) - History of the DOS family including CP/M, Q-DOS/86-DOS, MS-DOS and PC-DOS. Article also includes a diagram of the timeline and family tree of DOS[39m
|
||
[38;5;12m operating systems.[39m
|
||
|
||
[38;2;255;187;0m[4mCompiling[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1m80x86 16-bit Compiling How-to by Alexei A. Frounze[0m[38;5;12m (http://alexfru.narod.ru/os/c16/c16.html) - 16-bit compilation tutorial for Borland/Turbo C/C++ and Open Watcom. Goes into depth of memory addressing and memory models.[39m
|
||
[38;5;12m- [39m[38;5;14m[1m32bit DOS development with Open Watcom[0m[38;5;12m (http://tuttlem.github.io/2015/10/04/32bit-dos-development-with-open-watcom.html) - 32-bit compilation tutorial for Open Watcom.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHow to build DOS COM files with GCC by Chris Wellons[0m[38;5;12m (https://nullprogram.com/blog/2014/12/09/) - Build process of Chris Wellons's DOS Defender game using DJGPP. Goal was to create a 32-bit 80386 COM executable.[39m
|
||
|
||
[38;2;255;187;0m[4mGeneral[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mDavid Brackeen - 256-Color VGA Programming in C[0m[38;5;12m (https://web.archive.org/web/20240812211701/http://www.brackeen.com/vga/) - Tutorial series to learn how to create graphics on DOS, written in 1996.[39m
|
||
[38;5;12m- [39m[38;5;14m[1m640k Really is Enough for Anyone by Robert W. Oliver II[0m[38;5;12m (https://blog.sourcerer.io/640k-really-is-enough-for-anyone-314f393ca5b8) - Short article about getting Turbo C running on FreeDOS and moving a pixel around.[39m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mJust keeping it real... old skool style - Scali's OpenBlog[0m[38;5;12m (https://scalibq.wordpress.com/2011/11/23/just-keeping-it-real-old-skool-style/) - Blog post about Scali's journey of doing CGA, EGA and VGA programming.[39m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mAlex[0m[38;5;14m[1m [0m[38;5;14m[1mRussell's[0m[38;5;14m[1m [0m[38;5;14m[1mDos[0m[38;5;14m[1m [0m[38;5;14m[1mGame[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mC[0m[38;5;14m[1m [0m[38;5;14m[1mfor[0m[38;5;14m[1m [0m[38;5;14m[1mBeginners[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201112023702/http://www3.telus.net/alexander_russell/course/introduction.htm)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mtutorial[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mincluding[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mprimer[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mC,[39m[38;5;12m [39m[38;5;12mgraphics,[39m[38;5;12m [39m
|
||
[38;5;12manimation,[39m[38;5;12m [39m[38;5;12minput[39m[38;5;12m [39m[38;5;12mhandling[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcollision[39m[38;5;12m [39m[38;5;12mdetection.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mcontains[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mtutorial[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mmaking[39m[38;5;12m [39m[38;5;14m[1mbuffered[0m[38;5;14m[1m [0m[38;5;14m[1minput[0m[38;5;14m[1m [0m[38;5;14m[1mhandling[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20200203195410/http://www3.telus.net/alexander_russell/course/chapter_4.htm).[39m[38;5;12m [39m[38;5;12mLast[39m[38;5;12m [39m[38;5;12mchapter[39m[38;5;12m [39m[38;5;12mcontains[39m
|
||
[38;5;12mfull[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mBreak[39m[38;5;12m [39m[38;5;12mOut[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mDOS.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mThe[0m[38;5;14m[1m [0m[38;5;14m[1mArtevida[0m[38;5;14m[1m [0m[38;5;14m[1mGame[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mTutorials[0m[38;5;12m [39m[38;5;12m(http://web.archive.org/web/20201031021650/http://atrevida.comprenica.com/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mKevin[39m[38;5;12m [39m[38;5;12mMatz's[39m[38;5;12m [39m[38;5;12malmost[39m[38;5;12m [39m[38;5;12mbook-length[39m[38;5;12m [39m[38;5;12mtreatment[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mVGA[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mfundamentals[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mC/C++[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12m80x86[39m[38;5;12m [39m
|
||
[38;5;12massembly.[39m[38;5;12m [39m[38;5;12mUnfortunately[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mincomplete[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12mabandoned[39m[38;5;12m [39m[38;5;12msince[39m[38;5;12m [39m[38;5;12m2001.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mPC[0m[38;5;14m[1m [0m[38;5;14m[1mGame[0m[38;5;14m[1m [0m[38;5;14m[1mProgrammer's[0m[38;5;14m[1m [0m[38;5;14m[1mEncyclopedia[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201111164240/http://bespin.org/~qz/pc-gpe/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mCollection[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mguides[39m[38;5;12m [39m[38;5;12mcovering[39m[38;5;12m [39m[38;5;12massembly,[39m[38;5;12m [39m[38;5;12msound[39m[38;5;12m [39m[38;5;12m(Sound[39m[38;5;12m [39m[38;5;12mBlaster,[39m[38;5;12m [39m[38;5;12mGravis[39m[38;5;12m [39m[38;5;12mUltraSound,[39m[38;5;12m [39m[38;5;12mPC[39m[38;5;12m [39m[38;5;12mSpeaker,[39m[38;5;12m [39m[38;5;12mGameBlaster,[39m[38;5;12m [39m[38;5;12mAdlib),[39m[38;5;12m [39m[38;5;12minput,[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m[38;5;12m(EMS,[39m
|
||
[38;5;12mXMS,[39m[38;5;12m [39m[38;5;12mDMA[39m[38;5;12m [39m[38;5;12mTransfers),[39m[38;5;12m [39m[38;5;12mPIT,[39m[38;5;12m [39m[38;5;12mVGA,[39m[38;5;12m [39m[38;5;12mSVGA,[39m[38;5;12m [39m[38;5;12malgorithms[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12mformats.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mThe[0m[38;5;14m[1m [0m[38;5;14m[1mArt[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mDemomaking[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mflipcode[0m[38;5;12m [39m[38;5;12m(http://web.archive.org/web/20190123060222/http://www.flipcode.com/archives/The_Art_of_Demomaking-Issue_02_Introduction_To_Computer_Graphics.shtml)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSeries[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12m1999[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mintroduces[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mgraphics[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m
|
||
[38;5;12munder[39m[38;5;12m [39m[38;5;12mDOS.[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mhome[39m[38;5;12m [39m[38;5;12msite[39m[38;5;12m [39m[38;5;12mcontains[39m[38;5;12m [39m[38;5;12mother[39m[38;5;12m [39m[38;5;12mlate[39m[38;5;12m [39m[38;5;12m90s/early[39m[38;5;12m [39m[38;5;12m2000s[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12marticles[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mwell.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mProgramming MS-DOS with Power - DOS Programming, Undocumented DOS, and DOS Secrets[0m[38;5;12m (http://web.archive.org/web/20200626182822/http://www.fysnet.net/) - System programming tutorials like disk handling, interrupts, inputs, sound, graphics.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mProgrammer's[0m[38;5;14m[1m [0m[38;5;14m[1mHeaven[0m[38;5;14m[1m [0m[38;5;14m[1m(InfoMagic)(March[0m[38;5;14m[1m [0m[38;5;14m[1m1997)[0m[38;5;14m[1m [0m[38;5;14m[1mCD-ROM[0m[38;5;12m [39m[38;5;12m(http://discmaster.textfiles.com/view/4555/Programmer%27s%20Heaven%20%28InfoMagic%29%28March%201997%29.BIN%2Fmain.htm)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSource[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfiles[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfollowing[39m[38;5;12m [39m[38;5;12mtopics:[39m[38;5;12m [39m[38;5;12mMS-DOS,[39m[38;5;12m [39m[38;5;12mnetworking,[39m[38;5;12m [39m[38;5;12mC,[39m[38;5;12m [39m
|
||
[38;5;12mC++,[39m[38;5;12m [39m[38;5;12mPascal,[39m[38;5;12m [39m[38;5;12mVisual[39m[38;5;12m [39m[38;5;12mBasic,[39m[38;5;12m [39m[38;5;12mDelphi,[39m[38;5;12m [39m[38;5;12m3D,[39m[38;5;12m [39m[38;5;12mPC[39m[38;5;12m [39m[38;5;12mspeaker,[39m[38;5;12m [39m[38;5;12mSoundblaster,[39m[38;5;12m [39m[38;5;12mGravis[39m[38;5;12m [39m[38;5;12mUltrasound,[39m[38;5;12m [39m[38;5;12mMIDI[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mmore.[39m
|
||
|
||
[38;2;255;187;0m[4mDOS API[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mbios.h header documentation by Digital Mars[0m[38;5;12m (https://digitalmars.com/rtl/bios.html) - API documentation for routines accessing BIOS operations directly (disk operations, BIOS keyboard, printer, time, memory, serial, interrupts).[39m
|
||
[38;5;12m- dos.h header documentation by Digital Mars [39m[38;5;14m[1mPart 1[0m[38;5;12m (https://digitalmars.com/rtl/dos.html) [39m[38;5;14m[1mPart 2[0m[38;5;12m (https://digitalmars.com/rtl/dos2.html) - API documentation of functions for interfacing with the DOS operating system itself.[39m
|
||
|
||
[38;2;255;187;0m[4mInterrupts[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mRalph[0m[38;5;14m[1m [0m[38;5;14m[1mBrown's[0m[38;5;14m[1m [0m[38;5;14m[1mInterrupt[0m[38;5;14m[1m [0m[38;5;14m[1mList[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mHTML[0m[38;5;14m[1m [0m[38;5;14m[1mversion[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201111162212/http://www.ctyme.com/rbrown.htm)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mList[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mevery[39m[38;5;12m [39m[38;5;12mdocumented[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mundocumented[39m[38;5;12m [39m[38;5;12minterrupt[39m[38;5;12m [39m[38;5;12mcall[39m[38;5;12m [39m[38;5;12mknown,[39m[38;5;12m [39m[38;5;12maccessible[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12msearch,[39m[38;5;12m [39m[38;5;12mcategories[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12minterrupt[39m[38;5;12m [39m
|
||
[38;5;12mnumbers.[39m
|
||
[38;5;12m - Original in downloadable .zip files from [39m[38;5;14m[1mRalph Brown's website[0m[38;5;12m (https://web.archive.org/web/20201108093425/http://www.cs.cmu.edu/~ralf/files.html)[39m
|
||
|
||
[38;2;255;187;0m[4mMemory[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mA look back at memory models in 16-bit MS-DOS[0m[38;5;12m (https://devblogs.microsoft.com/oldnewthing/20200728-00/?p=104012) - Raymond Chen's explanation of segmented memory, including near- and far pointers.[39m
|
||
|
||
[38;2;255;187;0m[4mVideo[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mValues[0m[38;5;14m[1m [0m[38;5;14m[1mfor[0m[38;5;14m[1m [0m[38;5;14m[1mstandard[0m[38;5;14m[1m [0m[38;5;14m[1mvideo[0m[38;5;14m[1m [0m[38;5;14m[1mmode[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20200214123701/http://www.columbia.edu/~em36/wpdos/videomodes.txt)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mList[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mknown[39m[38;5;12m [39m[38;5;12mvideo[39m[38;5;12m [39m[38;5;12mmodes[39m[38;5;12m [39m[38;5;12mincluding[39m[38;5;12m [39m[38;5;12mBIOS[39m[38;5;12m [39m[38;5;12minterrupt[39m[38;5;12m [39m[38;5;12mnumbers,[39m[38;5;12m [39m[38;5;12mtext/pixel[39m[38;5;12m [39m[38;5;12mresolution,[39m[38;5;12m [39m[38;5;12mnumber[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcolors[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mvideo[39m[38;5;12m [39m
|
||
[38;5;12mmemory[39m[38;5;12m [39m[38;5;12maddresses.[39m
|
||
|
||
[38;2;255;187;0m[4mCGA[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mColor Graphics Adapter: Notes[0m[38;5;12m (https://web.archive.org/web/20201112020351/https://www.seasip.info/VintagePC/cga.html) - Document describing the hardware, memory map, register I/O and hardware clones of the IBM's original CGA.[39m
|
||
|
||
[38;2;255;187;0m[4mVGA[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mVGA Hardware - OSDev wiki[0m[38;5;12m (https://wiki.osdev.org/VGA_Hardware) - Hardware guide for VGA cards that is also relevant for modern graphics cards including NVidia and ATI.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mGraphical[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mAssembly[0m[38;5;14m[1m [0m[38;5;14m[1m(DOS)[0m[38;5;12m [39m[38;5;12m(http://web.archive.org/web/20201112040702/http://www.wagemakers.be/english/doc/vga)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mVGA[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mtutorial[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m[38;5;12mshows[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mlist[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mvideo[39m[38;5;12m [39m[38;5;12mmodes[39m[38;5;12m [39m[38;5;12m(text,[39m[38;5;12m [39m[38;5;12mCGA,[39m[38;5;12m [39m[38;5;12mEGA,[39m[38;5;12m [39m[38;5;12mVGA,[39m[38;5;12m [39m[38;5;12mSVGA)[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mtable[39m[38;5;12m [39m[38;5;12mat[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||
[38;5;12mbeginning.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mVGA programming lessons[0m[38;5;12m (http://joco.homeserver.hu/vgalessons/) - VGA programming tutorial series in Pascal and Assembly.[39m
|
||
|
||
[38;2;255;187;0m[4mSVGA[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mDOS[0m[38;5;14m[1m [0m[38;5;14m[1mSuper[0m[38;5;14m[1m [0m[38;5;14m[1mVGA[0m[38;5;14m[1m [0m[38;5;14m[1m/[0m[38;5;14m[1m [0m[38;5;14m[1mVESA[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1mnotes[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mMyles[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20200724153658/http://www.faqs.org/faqs/pc-hardware-faq/supervga-programming/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mVESA[39m[38;5;12m [39m[38;5;12marticle[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mhistory[39m[38;5;12m [39m[38;5;12mat[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mbeginning[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mshort[39m[38;5;12m [39m[38;5;12mmention[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mVESA[39m[38;5;12m [39m[38;5;12mVBE[39m[38;5;12m [39m
|
||
[38;5;12mstandard,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12munfortunately[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mexample[39m[38;5;12m [39m[38;5;12mcodes[39m[38;5;12m [39m[38;5;12maren't[39m[38;5;12m [39m[38;5;12meven[39m[38;5;12m [39m[38;5;12mavailable[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mWayback[39m[38;5;12m [39m[38;5;12mMachine.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mVESA Video Modes - OSDev wiki[0m[38;5;12m (https://wiki.osdev.org/Getting_VBE_Mode_Info) - Tutorial about querying VESA modes.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDJGPP VESA guide[0m[38;5;12m (http://www.delorie.com/djgpp/doc/ug/graphics/vesa.html.en) - Tutorial about querying VESA modes.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHigh-res high-speed VESA tutorial[0m[38;5;12m (https://web.archive.org/web/20200128180543/http://www.monstersoft.com/tutorial1/) - Series of tutorials that include drawing pixels in VESA mode (protected or real).[39m
|
||
[38;5;12m- [39m[38;5;14m[1mC code sample for drawing in VESA 2.0 mode[0m[38;5;12m (https://web.archive.org/web/20200121065447/http://www.codenet.ru/progr/video/vesa20ex.php) - Just code listing for drawing an ellipse in VESA mode.[39m
|
||
|
||
[38;2;255;187;0m[4mSound[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mSound[0m[38;5;14m[1m [0m[38;5;14m[1mCards[0m[38;5;14m[1m [0m[38;5;14m[1mCD[0m[38;5;12m [39m[38;5;12m(http://discmaster.textfiles.com/browse/63/Programming%20Sound%20Cards.iso)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12m1995[39m[38;5;12m [39m[38;5;12mCD-ROM[39m[38;5;12m [39m[38;5;12mcontaining[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mAdlib,[39m[38;5;12m [39m[38;5;12mGravis,[39m[38;5;12m [39m[38;5;12mPro-Audio,[39m[38;5;12m [39m[38;5;12mRoland[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mSound[39m[38;5;12m [39m[38;5;12mBlaster[39m[38;5;12m [39m[38;5;12msound[39m[38;5;12m [39m[38;5;12mcards.[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mdescription[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfolders[39m[38;5;12m [39m[38;5;12mon[39m
|
||
[38;5;12mthe[39m[38;5;12m [39m[38;5;12mCD-ROM[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mlisted[39m[38;5;12m [39m[38;5;14m[1mon[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mback[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mCD-ROM[0m[38;5;14m[1m [0m[38;5;14m[1mcase.[0m[38;5;12m [39m[38;5;12m(https://archive.org/details/programming-sound-cards/Programming%20Sound%20Cards_back.jpg)[39m
|
||
|
||
[38;2;255;187;0m[4mPC Speaker[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mMaking some noise with the PC speaker! - by Mark Feldman[0m[38;5;12m (https://web.archive.org/web/20150302161648/http://heim.ifi.uio.no/~inf3150/grupper/1/pcspeaker.html) - Very short tutorial on using the PIT for generating PC speaker frequency.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mFrequencies of Musical Notes[0m[38;5;12m (https://web.archive.org/web/20201129091353/https://pages.mtu.edu/~suits/notefreqs.html) - Freqency table usable to parameterize the PC speaker.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSound Programming with PC Speaker - Chapter 23 of A to Z of C[0m[38;5;12m (https://web.archive.org/web/20171115162742/http://guideme.itgo.com/atozofc/ch23.pdf) - PC speaker programming chapter of the "A to Z of C" book with source code.[39m
|
||
|
||
[38;2;255;187;0m[4mAdLib/OPL2[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mYamaha YM3812 (OPL2) sound chip Wikipedia article[0m[38;5;12m (https://en.wikipedia.org/wiki/Yamaha_YM3812) - Best starting point to learn about the OPL2 sound chip besides 8-bit guy's YouTube video.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mThe Ad Lib Music Synthesizer Card Programming Guide - by Tero Töttö[0m[38;5;12m (https://web.archive.org/web/20200427145810/http://www.vgmpf.com/Wiki/images/4/48/AdLib_-_Programming_Guide.pdf) - Reference of OPL2 operations and registers.[39m
|
||
|
||
[38;2;255;187;0m[4mSound Blaster/OPL3[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mProgrammer's Guide to the Yamaha YMF 262/OPL3 FM Music Synthesizer[0m[38;5;12m (https://web.archive.org/web/20200509082459/http://www.fit.vutbr.cz/~arnost/opl/opl3.html) - Reverse-engineered reference on OPL3.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mSound[0m[38;5;14m[1m [0m[38;5;14m[1mBlaster[0m[38;5;14m[1m [0m[38;5;14m[1m16[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mDocument[0m[38;5;14m[1m [0m[38;5;14m[1m3.5[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mEthan[0m[38;5;14m[1m [0m[38;5;14m[1mBrodsky[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201130110457/http://homepages.cae.wisc.edu/~brodskye/sb16doc/sb16doc.html)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mProgramming[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mSound[39m[38;5;12m [39m[38;5;12mBlaster[39m[38;5;12m [39m[38;5;12m16[39m[38;5;12m [39m[38;5;12mDSP[39m[38;5;12m [39m[38;5;12mCT1341[39m[38;5;12m [39m[38;5;12mchip[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mrecording[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mplayback[39m[38;5;12m [39m
|
||
[38;5;12mof[39m[38;5;12m [39m[38;5;12mdigitized[39m[38;5;12m [39m[38;5;12maudio.[39m
|
||
[38;5;12m - version 3.4 on [39m[38;5;14m[1mGameDev.net archive[0m[38;5;12m (https://web.archive.org/web/20180507161514/http://archive.gamedev.net/archive/reference/articles/article444.html)[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mSoundblaster[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mInformation[0m[38;5;14m[1m [0m[38;5;14m[1mv0.90[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20191020222313/http://www.intel-assembler.it/portale/5/soundblaster-programming-information/sb-reference-for-programming-sound.asp)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mList[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mSound[39m[38;5;12m [39m[38;5;12mBlaster[39m[38;5;12m [39m[38;5;12mmodels[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m
|
||
[38;5;12mregisters.[39m
|
||
|
||
[38;2;255;187;0m[4mOther[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mTable[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mDOSBox[0m[38;5;14m[1m [0m[38;5;14m[1mcyclecounts[0m[38;5;14m[1m [0m[38;5;14m[1maccording[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mprocessor[0m[38;5;14m[1m [0m[38;5;14m[1mtypes[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201112012244/https://www.alternatewars.com/Games/DOSBox/DOSBox.htm)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mtable[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12msetting[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mappropriate[39m[38;5;12m [39m[38;5;12mDOSBox[39m[38;5;12m [39m[38;5;12mcycle[39m[38;5;12m [39m[38;5;12mcount[39m[38;5;12m [39m[38;5;12maccording[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mCPU[39m[38;5;12m [39m[38;5;12mtypes[39m[38;5;12m [39m[38;5;12m(IBM[39m[38;5;12m [39m[38;5;12mXT[39m[38;5;12m [39m
|
||
[38;5;12m88,[39m[38;5;12m [39m[38;5;12m286,[39m[38;5;12m [39m[38;5;12m386,[39m[38;5;12m [39m[38;5;12m486,[39m[38;5;12m [39m[38;5;12mPentium[39m[38;5;12m [39m[38;5;12mI,[39m[38;5;12m [39m[38;5;12mPentium[39m[38;5;12m [39m[38;5;12mII).[39m[38;5;12m [39m[38;5;12mComes[39m[38;5;12m [39m[38;5;12mhandy[39m[38;5;12m [39m[38;5;12mwhen[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mdeveloping[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mwant[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msimulate[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12menvironment[39m[38;5;12m [39m[38;5;12mwhere[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mintend[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mexecute[39m[38;5;12m [39m[38;5;12mit.[39m
|
||
|
||
[38;2;255;187;0m[4mBooks[0m
|
||
|
||
[38;2;255;187;0m[4mFree[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mGame[0m[38;5;14m[1m [0m[38;5;14m[1mEngine[0m[38;5;14m[1m [0m[38;5;14m[1mBlack[0m[38;5;14m[1m [0m[38;5;14m[1mBook:[0m[38;5;14m[1m [0m[38;5;14m[1mWolfenstein[0m[38;5;14m[1m [0m[38;5;14m[1m3D[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mFabien[0m[38;5;14m[1m [0m[38;5;14m[1mSanglard[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20221226120420/https://fabiensanglard.net/b/gebbwolf3d.pdf)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFabien[39m[38;5;12m [39m[38;5;12mSanglard's[39m[38;5;12m [39m[38;5;12mwalkthrough[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mengine[39m[38;5;12m [39m[38;5;12marchitecture[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mid[39m[38;5;12m [39m[38;5;12mSoftware's[39m[38;5;12m [39m[38;5;12mWolfenstein[39m[38;5;12m [39m[38;5;12m3D[39m
|
||
[38;5;12mon[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mIBM[39m[38;5;12m [39m[38;5;12mPC's[39m[38;5;12m [39m[38;5;12mhardware.[39m[38;5;12m [39m[38;5;12mContains[39m[38;5;12m [39m[38;5;12mforewords[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mJohn[39m[38;5;12m [39m[38;5;12mCarcmack,[39m[38;5;12m [39m[38;5;12mTom[39m[38;5;12m [39m[38;5;12mHall[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mJohn[39m[38;5;12m [39m[38;5;12mRomero.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mGame[0m[38;5;14m[1m [0m[38;5;14m[1mEngine[0m[38;5;14m[1m [0m[38;5;14m[1mBlack[0m[38;5;14m[1m [0m[38;5;14m[1mBook:[0m[38;5;14m[1m [0m[38;5;14m[1mDoom[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mFabien[0m[38;5;14m[1m [0m[38;5;14m[1mSanglard[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20221225164613/https://fabiensanglard.net/b/gebbdoom.pdf)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFabien[39m[38;5;12m [39m[38;5;12mSanglard's[39m[38;5;12m [39m[38;5;12mwalkthrough[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mengine[39m[38;5;12m [39m[38;5;12marchitecture[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mid[39m[38;5;12m [39m[38;5;12mSoftware's[39m[38;5;12m [39m[38;5;12moriginal[39m[38;5;12m [39m[38;5;12mDoom[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mIntel[39m[38;5;12m [39m[38;5;12m486[39m
|
||
[38;5;12msystem[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mconsole[39m[38;5;12m [39m[38;5;12mports.[39m[38;5;12m [39m[38;5;12mContains[39m[38;5;12m [39m[38;5;12mforewords[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mJohn[39m[38;5;12m [39m[38;5;12mCarcmack,[39m[38;5;12m [39m[38;5;12mDave[39m[38;5;12m [39m[38;5;12mTaylor[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mJohn[39m[38;5;12m [39m[38;5;12mRomero.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mA[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mZ[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mC[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1ma[0m[38;5;14m[1m [0m[38;5;14m[1mbook[0m[38;5;14m[1m [0m[38;5;14m[1mon[0m[38;5;14m[1m [0m[38;5;14m[1mC/DOS[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mK.[0m[38;5;14m[1m [0m[38;5;14m[1mJoseph[0m[38;5;14m[1m [0m[38;5;14m[1mWesley[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mR.[0m[38;5;14m[1m [0m[38;5;14m[1mRajesh[0m[38;5;14m[1m [0m[38;5;14m[1mJeba[0m[38;5;14m[1m [0m[38;5;14m[1mAnbiah[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201109033646/http://guideme.itgo.com/atozofc/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mNon-profit[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mDOS.[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mstarts[39m[38;5;12m [39m
|
||
[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mPart[39m[38;5;12m [39m[38;5;12mII.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mMichael[0m[38;5;14m[1m [0m[38;5;14m[1mAbrash's[0m[38;5;14m[1m [0m[38;5;14m[1mGraphics[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mBlack[0m[38;5;14m[1m [0m[38;5;14m[1mBook[0m[38;5;14m[1m [0m[38;5;14m[1mSpecial[0m[38;5;14m[1m [0m[38;5;14m[1mEdition[0m[38;5;12m [39m[38;5;12m(https://www.drdobbs.com/parallel/graphics-programming-black-book/184404919)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mCollection[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mMichael[39m[38;5;12m [39m[38;5;12mAbrash's[39m[38;5;12m [39m[38;5;12mDr.[39m[38;5;12m [39m[38;5;12mDobb's[39m[38;5;12m [39m[38;5;12mJournal[39m[38;5;12m [39m[38;5;12mgraphics[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12marticles[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mhis[39m[38;5;12m [39m[38;5;12mwork[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||
[38;5;12mgraphics[39m[38;5;12m [39m[38;5;12msubsystem[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mQuake[39m[38;5;12m [39m[38;5;12m([39m[38;5;14m[1mmirror[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20201112020812/http://www.phatcode.net/res/224/files/html/index.html)).[39m
|
||
|
||
[38;2;255;187;0m[4mPaid[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mTricks[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mGame-Programming[0m[38;5;14m[1m [0m[38;5;14m[1mGurus[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mAndre[0m[38;5;14m[1m [0m[38;5;14m[1mLamothe,[0m[38;5;14m[1m [0m[38;5;14m[1mJohn[0m[38;5;14m[1m [0m[38;5;14m[1mRatcliff[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mDenise[0m[38;5;14m[1m [0m[38;5;14m[1mTyler[0m[38;5;12m [39m[38;5;12m(https://www.amazon.com/Tricks-Game-Programming-Gurus-Andre-Lamothe/dp/0672305070/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mComprehensive[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mstarting[39m[38;5;12m [39m[38;5;12mout.[39m[38;5;12m [39m[38;5;12mTopics[39m[38;5;12m [39m
|
||
[38;5;12minclude[39m[38;5;12m [39m[38;5;12mkeyboard,[39m[38;5;12m [39m[38;5;12mmouse-[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mjoystick[39m[38;5;12m [39m[38;5;12minput[39m[38;5;12m [39m[38;5;12mhandling,[39m[38;5;12m [39m[38;5;12mcreating[39m[38;5;12m [39m[38;5;12m2D[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12m3D[39m[38;5;12m [39m[38;5;12mVGA[39m[38;5;12m [39m[38;5;12mgraphics,[39m[38;5;12m [39m[38;5;12mraycaster[39m[38;5;12m [39m[38;5;12mrendering,[39m[38;5;12m [39m[38;5;12msound[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmusic,[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12malgorithms,[39m[38;5;12m [39m[38;5;12mInterrupt[39m[38;5;12m [39m[38;5;12mService[39m[38;5;12m [39m[38;5;12mRoutines[39m[38;5;12m [39m[38;5;12m(ISR),[39m[38;5;12m [39m[38;5;12mtimers,[39m[38;5;12m [39m[38;5;12martificial[39m[38;5;12m [39m[38;5;12mintelligence,[39m[38;5;12m [39m[38;5;12mnetworked[39m[38;5;12m [39m[38;5;12mmultiplayer[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mserial[39m[38;5;12m [39m
|
||
[38;5;12mport[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mnull-modem[39m[38;5;12m [39m[38;5;12mcable,[39m[38;5;12m [39m[38;5;12mtooling,[39m[38;5;12m [39m[38;5;12mparallax[39m[38;5;12m [39m[38;5;12mscrolling[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12moptimization[39m[38;5;12m [39m[38;5;12mtechniques.[39m
|
||
[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mEbook[39m[38;5;12m [39m[38;5;12mavailable[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12monline[39m[38;5;12m [39m[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mborrow[39m[38;5;12m [39m[38;5;12m(required[39m[38;5;12m [39m[38;5;12mdue[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mlicensing):[39m[38;5;12m [39m[38;5;14m[1mOpen[0m[38;5;14m[1m [0m[38;5;14m[1mLibrary[0m[38;5;14m[1m [0m[38;5;14m[1mlink[0m[38;5;12m [39m[38;5;12m(https://openlibrary.org/books/OL1124792M/Tricks_of_the_game-programming_gurus),[39m[38;5;12m [39m[38;5;14m[1mInternet[0m[38;5;14m[1m [0m[38;5;14m[1mArchive[0m[38;5;14m[1m [0m[38;5;14m[1mlink[0m[38;5;12m [39m
|
||
[38;5;12m(https://archive.org/details/tricksofgameprog0000unse/page/n5/mode/2up)[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mMore[0m[38;5;14m[1m [0m[38;5;14m[1mTricks[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mGame[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mGurus[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mGreg[0m[38;5;14m[1m [0m[38;5;14m[1mAnderson[0m[38;5;12m [39m[38;5;12m(https://www.amazon.com/More-Tricks-Game-Programming-Gurus-Cd-Rom/dp/0672306972)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mCompanion[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12m_Tricks[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mGame[39m[38;5;12m [39m[38;5;12mProgramming[39m[38;5;12m [39m[38;5;12mGurus_,[39m[38;5;12m [39m[38;5;12mcontinuing[39m[38;5;12m [39m[38;5;12mwhere[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moriginal[39m[38;5;12m [39m[38;5;12mleft[39m[38;5;12m [39m[38;5;12moff.[39m[38;5;12m [39m
|
||
[38;5;12mTopics[39m[38;5;12m [39m[38;5;12minclude[39m[38;5;12m [39m[38;5;12mSVGA,[39m[38;5;12m [39m[38;5;12mBinary[39m[38;5;12m [39m[38;5;12mSpace[39m[38;5;12m [39m[38;5;12mPartition[39m[38;5;12m [39m[38;5;12m(BSP),[39m[38;5;12m [39m[38;5;12mUI,[39m[38;5;12m [39m[38;5;12mvoxel[39m[38;5;12m [39m[38;5;12mgraphics,[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m[38;5;12mmanagement[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mreal[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mprotected[39m[38;5;12m [39m[38;5;12mmode,[39m[38;5;12m [39m[38;5;12madvanced[39m[38;5;12m [39m[38;5;12msound[39m[38;5;12m [39m[38;5;12mprogramming,[39m[38;5;12m [39m[38;5;12mdebugging[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12moptimization[39m[38;5;12m [39m[38;5;12mtechniques.[39m
|
||
[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mEbook[39m[38;5;12m [39m[38;5;12mavailable[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12monline[39m[38;5;12m [39m[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mborrow[39m[38;5;12m [39m[38;5;12m(required[39m[38;5;12m [39m[38;5;12mdue[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mlicensing):[39m[38;5;12m [39m[38;5;14m[1mOpen[0m[38;5;14m[1m [0m[38;5;14m[1mLibrary[0m[38;5;14m[1m [0m[38;5;14m[1mlink[0m[38;5;12m [39m[38;5;12m(https://openlibrary.org/works/OL19501825W/More_tricks_of_the_game-programming_gurus),[39m[38;5;12m [39m[38;5;14m[1mInternet[0m[38;5;14m[1m [0m[38;5;14m[1mArchive[0m[38;5;14m[1m [0m[38;5;14m[1mlink[0m[38;5;12m [39m
|
||
[38;5;12m(https://archive.org/details/moretricksofgame0000unse/page/n7/mode/2up)[39m
|
||
|
||
[38;2;255;187;0m[4mVideos[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mWhy DOS Was (and Is) a Thing - FreeDOS[0m[38;5;12m (https://www.youtube.com/watch?v=3E5Hog5OnIM) - Historical talk starting from Unix, going through CPM, DOS 1.x, DOS 2.x, DOS 3.x, DOS 4.x, DOS 6.x, Windows 3.1, Windows 95 and ending with FreeDOS.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCGA Graphics - Not as bad as you thought! - by 8-bit Guy[0m[38;5;12m (https://www.youtube.com/watch?v=niKblgZupOc) - History and technical details about IBM's CGA system. Also describes 4-color RGBI and 16-color Composite modes.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHow Oldschool Sound/Music worked - by 8-bit Guy[0m[38;5;12m (https://www.youtube.com/watch?v=q_3d1x2VPxk) - Video about PC speaker, FM synthesizers in NES and Commodore 64, Yamaha OPL chip in AdLib and Sound Blaster sound cards, PCM samples and MOD music.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mLet's Code - MS DOS - by root42[0m[38;5;12m (https://www.youtube.com/playlist?list=PLGJnX2KGgaw2L7Uv5NThlL48G9y4rJx1X) - DOS programming tutorial series including VGA, SoundBlaster and VGA Mode X.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mLGR[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mEvolution[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mPC[0m[38;5;14m[1m [0m[38;5;14m[1mAudio[0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mAs[0m[38;5;14m[1m [0m[38;5;14m[1mTold[0m[38;5;14m[1m [0m[38;5;14m[1mby[0m[38;5;14m[1m [0m[38;5;14m[1mSecret[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mMonkey[0m[38;5;14m[1m [0m[38;5;14m[1mIsland[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/watch?v=a324ykKV-7Y)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mComparison[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mplaying[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mintro[39m[38;5;12m [39m[38;5;12mtheme[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mSecret[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mMonkey[39m[38;5;12m [39m[38;5;12mIsland[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mPC[39m[38;5;12m [39m[38;5;12mspeaker,[39m[38;5;12m [39m[38;5;12mIBM[39m[38;5;12m [39m[38;5;12mPCjr/Tandy,[39m[38;5;12m [39m[38;5;12mAdLib,[39m[38;5;12m [39m[38;5;12mGame[39m[38;5;12m [39m[38;5;12mBlaster,[39m[38;5;12m [39m[38;5;12mRoland[39m[38;5;12m [39m
|
||
[38;5;12mLAPC-1/MT-32,[39m[38;5;12m [39m[38;5;12mGravis[39m[38;5;12m [39m[38;5;12mUltrasound,[39m[38;5;12m [39m[38;5;12mRoland[39m[38;5;12m [39m[38;5;12mSCC-1[39m[38;5;12m [39m[38;5;12mMIDI,[39m[38;5;12m [39m[38;5;12mSB16[39m[38;5;12m [39m[38;5;12mWaveblaster/AWE32[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mCD[39m[38;5;12m [39m[38;5;12mquality[39m[38;5;12m [39m[38;5;12mdigital[39m[38;5;12m [39m[38;5;12maudio.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mPorting[0m[38;5;14m[1m [0m[38;5;14m[1mRetro[0m[38;5;14m[1m [0m[38;5;14m[1mCity[0m[38;5;14m[1m [0m[38;5;14m[1mRampage[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mMS-DOS:[0m[38;5;14m[1m [0m[38;5;14m[1mFrom[0m[38;5;14m[1m [0m[38;5;14m[1mPS4[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1m1.44MB[0m[38;5;14m[1m [0m[38;5;14m[1mFloppy[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/watch?v=kSKeWH4TY9Y)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mGDC[39m[38;5;12m [39m[38;5;12mtalk.[39m[38;5;12m [39m[38;5;12mBrian[39m[38;5;12m [39m[38;5;12mProvinciano's[39m[38;5;12m [39m[38;5;12mpresentation[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mporting[39m[38;5;12m [39m[38;5;12mRetro[39m[38;5;12m [39m[38;5;12mCity[39m[38;5;12m [39m[38;5;12mRampage[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mPlayStation[39m[38;5;12m [39m[38;5;12m4[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mDOS.[39m[38;5;12m [39m[38;5;12mTopics[39m[38;5;12m [39m[38;5;12minclude[39m[38;5;12m [39m[38;5;12moptimization,[39m[38;5;12m [39m
|
||
[38;5;12musing[39m[38;5;12m [39m[38;5;12minterrupts,[39m[38;5;12m [39m[38;5;12mtiming,[39m[38;5;12m [39m[38;5;12mPC[39m[38;5;12m [39m[38;5;12mspeaker[39m[38;5;12m [39m[38;5;12msound,[39m[38;5;12m [39m[38;5;12mjoystick,[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m[38;5;12mmanagement[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfixed-point[39m[38;5;12m [39m[38;5;12mmath.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDOS Executables Explained - Nostalgia Nerd[0m[38;5;12m (https://www.youtube.com/watch?v=6j947U4xl5I) - Video about DOS executable formats including [39m[48;5;235m[38;5;249m.COM[49m[39m[38;5;12m, [39m[48;5;235m[38;5;249m.BAT[49m[39m[38;5;12m and [39m[48;5;235m[38;5;249m.EXE[49m[39m[38;5;12m.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mWhy does DOS use 8.3 Filenames? - Nostalgia Nerd[0m[38;5;12m (https://www.youtube.com/watch?v=eGIyCD2_qA8) - Video about the 8.3 limitation of filenames under DOS, FAT partitioning scheme, NTFS, VFAT, FatGo, and [39m[48;5;235m[38;5;249mLFN.EXE[49m[39m[38;5;12m.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mWhat[0m[38;5;14m[1m [0m[38;5;14m[1mis[0m[38;5;14m[1m [0m[38;5;14m[1mDOS[0m[38;5;14m[1m [0m[38;5;14m[1mProtected[0m[38;5;14m[1m [0m[38;5;14m[1mMode?[0m[38;5;14m[1m [0m[38;5;14m[1m/[0m[38;5;14m[1m [0m[38;5;14m[1mDOS[0m[38;5;14m[1m [0m[38;5;14m[1mExtenders-[0m[38;5;14m[1m [0m[38;5;14m[1mNostalgia[0m[38;5;14m[1m [0m[38;5;14m[1mNerd[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/watch?v=XAyQLV5bbb0)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mVideo[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mPC[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m[38;5;12mlooks[39m[38;5;12m [39m[38;5;12mlike,[39m[38;5;12m [39m[38;5;12mconventional[39m[38;5;12m [39m[38;5;12mmemory,[39m[38;5;12m [39m[38;5;12mextender[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mreasons[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mneed[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mProtected[39m[38;5;12m [39m[38;5;12mMode[39m[38;5;12m [39m[38;5;12mInterface[39m[38;5;12m [39m
|
||
[38;5;12m(DPMI)[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mextenders[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mDOS/4GW.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mMS-DOS[0m[38;5;14m[1m [0m[38;5;14m[1mhas[0m[38;5;14m[1m [0m[38;5;14m[1mbeen[0m[38;5;14m[1m [0m[38;5;14m[1mOpen-Sourced![0m[38;5;14m[1m [0m[38;5;14m[1mWe[0m[38;5;14m[1m [0m[38;5;14m[1mBuild[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mRun[0m[38;5;14m[1m [0m[38;5;14m[1mit![0m[38;5;14m[1m [0m[38;5;14m[1m-[0m[38;5;14m[1m [0m[38;5;14m[1mDave's[0m[38;5;14m[1m [0m[38;5;14m[1mGarage[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/watch?v=BR6F0EdyulA)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFormer[39m[38;5;12m [39m[38;5;12mMicrosoft[39m[38;5;12m [39m[38;5;12memployee[39m[38;5;12m [39m[38;5;12mDavid[39m[38;5;12m [39m[38;5;12mPlummer[39m[38;5;12m [39m[38;5;12mtells[39m[38;5;12m [39m[38;5;12mstories[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mMS-DOS[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcompiles[39m[38;5;12m [39m[38;5;12mMS-DOS[39m[38;5;12m [39m[38;5;12m4.00[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mhas[39m[38;5;12m [39m
|
||
[38;5;12mbeen[39m[38;5;12m [39m[38;5;12mopen-sourced[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mMicrosoft.[39m
|
||
|
||
[38;2;255;187;0m[4mSource code[0m
|
||
|
||
[38;2;255;187;0m[4mOpen source DOS operating systems[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mMS-DOS[0m[38;5;12m (https://github.com/microsoft/MS-DOS) - GitHub repository of the original source code for MS-DOS v1.25, v2.0 and v4.0, open-sourced by Microsoft.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mFreeDOS[0m[38;5;12m [39m[38;5;12m(https://www.freedos.org/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFreeDOS[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mopen[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mDOS-compatible[39m[38;5;12m [39m[38;5;12moperating[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mplay[39m[38;5;12m [39m[38;5;12mclassic[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mgames,[39m[38;5;12m [39m[38;5;12mrun[39m[38;5;12m [39m[38;5;12mlegacy[39m[38;5;12m [39m[38;5;12mbusiness[39m[38;5;12m [39m[38;5;12msoftware,[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mdevelop[39m[38;5;12m [39m[38;5;12membedded[39m[38;5;12m [39m[38;5;12msystems.[39m[38;5;12m [39m[38;5;12mAny[39m[38;5;12m [39m[38;5;12mprogram[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mworks[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mMS-DOS[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m
|
||
[38;5;12mrun[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mFreeDOS.[39m
|
||
|
||
[38;2;255;187;0m[4mOpen source DOS libraries[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mAllegro 4.2[0m[38;5;12m (https://github.com/liballeg/allegro5/tree/v4-2-3-1) - Game development library for DOS, Windows and Linux. 4.2 version supports DOS platform.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mAllegro 4.2.1 PDF documentation.[0m[38;5;12m (https://download.tuxfamily.org/allegro/allegro-manual/4.2.1/allegro-manual-4.2.1.en.pdf)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mLoveDOS[0m[38;5;12m (https://github.com/rxi/lovedos) - A framework for making 2D DOS games in Lua. API based on a subset of the LÖVE API.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDOS-VGA-Game[0m[38;5;12m (https://github.com/marcomarrero/DOS-VGA-Game) - Marco A. Marrero's DOS VGA/hardware library implemented in assembly and Turbo Pascal.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDIGPAK sound drivers source code[0m[38;5;12m (https://github.com/jratcliff63367/digpak) - Original source code for the DIGPAK sound drivers uploaded to GitHub by John W. Ratcliff.[39m
|
||
|
||
[38;2;255;187;0m[4mOpen source DOS games[0m
|
||
|
||
[38;2;255;187;0m[4mHomebrew games with source code[0m
|
||
|
||
[38;5;12mList of all homebrew DOS games: http://www.doshaven.eu[39m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mDOS Defender[0m[38;5;12m (https://github.com/skeeto/dosdefender-ld31) - Christopher Wellons's x86 real mode DOS Asteroids clone created as an entry for Lundum Dare #31.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mDungeons[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mNoudar[0m[38;5;12m [39m[38;5;12m(https://github.com/TheFakeMontyOnTheRun/dungeons-of-noudar)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFirst-person[39m[38;5;12m [39m[38;5;12m2.5D[39m[38;5;12m [39m[38;5;12mdungeon-crawler[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mprotected[39m[38;5;12m [39m[38;5;12mmode.[39m[38;5;12m [39m[38;5;12mWritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC++,[39m[38;5;12m [39m[38;5;12mincludes[39m[38;5;12m [39m[38;5;12msoftware[39m[38;5;12m [39m[38;5;12mrendering,[39m[38;5;12m [39m[38;5;12mfixed[39m[38;5;12m [39m[38;5;12mpoint[39m[38;5;12m [39m[38;5;12mmath,[39m[38;5;12m [39m[38;5;12mtest[39m[38;5;12m [39m[38;5;12mcoverage[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msound[39m[38;5;12m [39m[38;5;12m(PC[39m[38;5;12m [39m[38;5;12mspeaker,[39m[38;5;12m [39m[38;5;12mAdlib,[39m[38;5;12m [39m
|
||
[38;5;12mOPL2LPT).[39m
|
||
[38;5;12m- [39m[38;5;14m[1mEmeritus Pong[0m[38;5;12m (https://sourceforge.net/projects/empong/) - Pong clone for DOS, Windows and Linux. Uses PC speaker for sound on DOS.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mFloppy Bird[0m[38;5;12m (https://github.com/icebreaker/floppybird) - Flappy Bird clone written in 16 bit assembly. Not a DOS program, but a PC-Booter application instead (although it's also possible to build a COM executable for DOS).[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mGeorge[0m[38;5;14m[1m [0m[38;5;14m[1mM.[0m[38;5;14m[1m [0m[38;5;14m[1mTzoumas's[0m[38;5;14m[1m [0m[38;5;14m[1mcollection[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mMS-DOS[0m[38;5;14m[1m [0m[38;5;14m[1mgames[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mutilities[0m[38;5;12m [39m[38;5;12m(http://web.archive.org/web/20191225101138/http://cgi.di.uoa.gr/~geotz/dos/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mTurbo[39m[38;5;12m [39m[38;5;12mPascal[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mfew[39m[38;5;12m [39m[38;5;12mgames[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mC++.[39m[38;5;12m [39m[38;5;12mGames[39m[38;5;12m [39m[38;5;12minclude[39m[38;5;12m [39m[38;5;12mNibbles,[39m[38;5;12m [39m[38;5;12mConnect[39m[38;5;12m [39m[38;5;12mFour,[39m[38;5;12m [39m[38;5;12mMs[39m[38;5;12m [39m[38;5;12mPacman[39m[38;5;12m [39m[38;5;12mclone[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mtwo[39m[38;5;12m [39m
|
||
[38;5;12marcade/platform[39m[38;5;12m [39m[38;5;12mgames.[39m[38;5;12m [39m[38;5;12mOne[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthem[39m[38;5;12m [39m[38;5;12m(ra2)[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mAllegro.[39m[38;5;12m [39m[38;5;12mUtilities[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTurbo[39m[38;5;12m [39m[38;5;12mPascal,[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12minclude[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mroutines,[39m[38;5;12m [39m[38;5;12mfile[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdisk[39m[38;5;12m [39m[38;5;12mutilities[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mterminate-and-stay-resident[39m[38;5;12m [39m[38;5;12mprograms[39m[38;5;12m [39m[38;5;12m(TSR).[39m
|
||
[38;5;12m- [39m[38;5;14m[1mGold Mine Run![0m[38;5;12m (https://www.usebox.net/jjm/gold-mine-run/) - Platformer written in C using DJGPP.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mGridfighter 3D[0m[38;5;12m (https://porta2note.itch.io/gridfighter-3d) - '80s style arcade shooter written in Quickbasic. Also the very first known DOS game that supports Oculus Rift VR headset.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mGitHub repository[0m[38;5;12m (https://github.com/porta2note/gridfighter3d)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHangman[0m[38;5;12m (https://sourceforge.net/projects/hangman-dos/) - Hangman clone written in Basic. Runs on at least 80286 processors and uses EGA graphics.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMagenta's Maze[0m[38;5;12m (https://archive.org/details/MAGSMAZE) - 3D maze game using CGA graphics with algebra as theme.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSource code download link[0m[38;5;12m (http://www.doshaven.eu/downloads/537)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMario[0m[38;5;12m (http://www.wieringsoftware.nl/mario/index.html) - Super Mario Bros clone written in Turbo Pascal.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mNetHack[0m[38;5;12m (https://github.com/NetHack/NetHack) - Descendant of the original [39m[38;5;14m[1mNetHack[0m[38;5;12m (https://en.wikipedia.org/wiki/NetHack) rougelike game first released in 1987 available on multiple platforms.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mPiskworks[0m[38;5;12m (https://github.com/berk76/piskworks) - Gomoku clone written in C. Works on DOS, ZX Spectrum, ZX81, ZX80, APPLE1, AS400 and Windows.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mPlutonium[0m[38;5;14m[1m [0m[38;5;14m[1mCaverns[0m[38;5;12m [39m[38;5;12m(https://github.com/jani-nykanen/plutonium-caverns)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mOverhead[39m[38;5;12m [39m[38;5;12mpuzzle[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC.[39m[38;5;12m [39m[38;5;12mWeb[39m[38;5;12m [39m[38;5;12mversion[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;14m[1mDOSBox[0m[38;5;14m[1m [0m[38;5;14m[1mported[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mEmscripten[0m[38;5;12m [39m[38;5;12m(https://github.com/dreamlayers/em-dosbox)[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12membed[39m[38;5;12m [39m[38;5;12mDOSBox[39m[38;5;12m [39m[38;5;12minto[39m[38;5;12m [39m[38;5;12mHTML5.[39m[38;5;12m [39m[38;5;12mHowever,[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moriginal[39m
|
||
[38;5;12mexecutable[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m[38;5;12mdownloadable[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mbuildable[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mOpen[39m[38;5;12m [39m[38;5;12mWatcom.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mPtakovina[0m[38;5;12m (https://github.com/berk76/tetris) - Tetris clone written in C. Runs on DOS, Unix/Linux, ZX Spectrum and Windows.[39m
|
||
[38;5;12m- [39m[38;5;14m[1msudoku86[0m[38;5;12m (https://sourceforge.net/projects/sudoku86/) - Sudoku clone written in C. Runs on 8086/8088 CPU, uses CGA, MCGA or VGA graphics and uses a mouse.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mTetris[0m[38;5;12m (http://www.doshaven.eu/game/tetris/) - Tetris clone written in assembly.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSource code download link[0m[38;5;12m (http://www.doshaven.eu/downloads/373)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mTowers of Hanoi[0m[38;5;12m (https://github.com/sblendorio/hanoi-dos) - [39m[38;5;14m[1mTower of Hanoi[0m[38;5;12m (https://en.wikipedia.org/wiki/Tower_of_Hanoi) puzzle game written in Turbo Pascal. Originally released in 1996.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mx86 pong[0m[38;5;12m (https://github.com/spacerace/x86-pong) - Text-mode Pong clone written in C. Runs as PC-Booter game and under DOS.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mzmiy[0m[38;5;12m (https://sourceforge.net/projects/zmiy/) - Text-mode Snake clone written in C. Runs on 8086 DOS.[39m
|
||
|
||
[38;2;255;187;0m[4mFreeware games with source code[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCyberdogs[0m[38;5;12m (https://web.archive.org/web/20190222022411/https://www.classicdosgames.com/game/Cyberdogs.html) - Top-down 2D shooter playing as a mercenary to earn money. Written in Turbo Pascal. Supports two player mode.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSource code download link[0m[38;5;12m (https://web.archive.org/web/20180120123425/https://www.classicdosgames.com/files/source/dogs_src.zip)[39m
|
||
[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mC-Dogs[0m[38;5;12m [39m[38;5;12m(https://en.wikipedia.org/wiki/C-Dogs)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSequel[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moriginal[39m[38;5;12m [39m[38;5;12mCyberdogs.[39m[38;5;12m [39m[38;5;12mRonny[39m[38;5;12m [39m[38;5;12mWester,[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moriginal[39m[38;5;12m [39m[38;5;12mcreator[39m[38;5;12m [39m[38;5;12mno[39m[38;5;12m [39m[38;5;12mlonger[39m[38;5;12m [39m[38;5;12mmaintains[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mwebsite[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moriginal[39m[38;5;12m [39m[38;5;12mC-Dogs,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mmultiple[39m[38;5;12m [39m[38;5;12mports[39m[38;5;12m [39m[38;5;12mexists,[39m[38;5;12m [39m[38;5;12mincluding[39m[38;5;12m [39m[38;5;14m[1mcdogs-sdl[0m[38;5;12m [39m
|
||
[38;5;12m(https://congusbongus.itch.io/cdogs-sdl).[39m
|
||
|
||
[38;2;255;187;0m[4mCommercial games with published source code[0m
|
||
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mAbuse[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20190801083909/https://www.classicdosgames.com/game/Abuse.html)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSci-fi[39m[38;5;12m [39m[38;5;12mside-scrolling[39m[38;5;12m [39m[38;5;12mplatform[39m[38;5;12m [39m[38;5;12mgame.[39m[38;5;12m [39m[38;5;12mRegarded[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12minnovative[39m[38;5;12m [39m[38;5;12mcult[39m[38;5;12m [39m[38;5;12mclassic[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mmost[39m[38;5;12m [39m[38;5;12mpeople.[39m[38;5;12m [39m[38;5;12mSupports[39m[38;5;12m [39m[38;5;12mSVGA[39m[38;5;12m [39m[38;5;12mmode[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12m1280x1024[39m[38;5;12m [39m[38;5;12mresolution.[39m[38;5;12m [39m
|
||
[38;5;12mWritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC,[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12marchitecture[39m[38;5;12m [39m[38;5;12mincludes[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mLisp-scripting[39m[38;5;12m [39m[38;5;12mengine.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSource code download link[0m[38;5;12m (https://web.archive.org/web/20160402141350/http://www.classicdosgames.com/files/source/abuse_pd.tgz)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mBeneath a Steel Sky[0m[38;5;12m (https://web.archive.org/web/20200721064209/https://www.classicdosgames.com/game/Beneath_a_Steel_Sky.html) - Point-and-click adventure game set in a dystopian future. Written in assembly.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSource code download link[0m[38;5;12m (https://web.archive.org/web/20200721083621/https://www.classicdosgames.com/files/source/sky-source.zip)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCatacomb[0m[38;5;12m (https://github.com/CatacombGames/Catacomb) - 2D top-down shooter developed by Softdisk (later becoming id Software). Supports EGA and CGA graphics. Written in Turbo Pascal and assembly.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mCatacomb[0m[38;5;14m[1m [0m[38;5;14m[1m3D[0m[38;5;12m [39m[38;5;12m(https://github.com/CatacombGames/Catacomb3D)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFirst-person[39m[38;5;12m [39m[38;5;12mshooter[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mfantasy[39m[38;5;12m [39m[38;5;12msetting[39m[38;5;12m [39m[38;5;12mdeveloped[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mSoftdisk[39m[38;5;12m [39m[38;5;12m(later[39m[38;5;12m [39m[38;5;12mbecoming[39m[38;5;12m [39m[38;5;12mid[39m[38;5;12m [39m[38;5;12mSoftware).[39m[38;5;12m [39m[38;5;12mFeatures[39m[38;5;12m [39m[38;5;12mpseudo-3D[39m[38;5;12m [39m[38;5;12mgraphics[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mraycasting[39m[38;5;12m [39m[38;5;12mtechnique.[39m[38;5;12m [39m[38;5;12mSupports[39m[38;5;12m [39m[38;5;12mEGA[39m[38;5;12m [39m[38;5;12mgraphics.[39m[38;5;12m [39m[38;5;12mWritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC[39m[38;5;12m [39m
|
||
[38;5;12mand[39m[38;5;12m [39m[38;5;12massembly.[39m[38;5;12m [39m[38;5;12mCompiled[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mBorland[39m[38;5;12m [39m[38;5;12mC++[39m[38;5;12m [39m[38;5;12m3.1.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mCommander[0m[38;5;14m[1m [0m[38;5;14m[1mKeen[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mKeen[0m[38;5;14m[1m [0m[38;5;14m[1mDreams[0m[38;5;12m [39m[38;5;12m(https://github.com/keendreams/keen)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSide-scrolling[39m[38;5;12m [39m[38;5;12mplatform[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mdeveloped[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mid[39m[38;5;12m [39m[38;5;12mSoftware.[39m[38;5;12m [39m[38;5;12mKeen[39m[38;5;12m [39m[38;5;12mDreams[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mCommander[39m[38;5;12m [39m[38;5;12mKeen[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12mcreated[39m[38;5;12m [39m[38;5;12mbetween[39m[38;5;12m [39m[38;5;12mKeen[39m[38;5;12m [39m[38;5;12m3[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mKeen[39m[38;5;12m [39m[38;5;12m4[39m[38;5;12m [39m[38;5;12m(often[39m[38;5;12m [39m[38;5;12mconsidered[39m[38;5;12m [39m[38;5;12m"Keen[39m[38;5;12m [39m[38;5;12m3.5"),[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m
|
||
[38;5;12mwidely[39m[38;5;12m [39m[38;5;12mreleased.[39m[38;5;12m [39m[38;5;12mWritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12massembly.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDescent[0m[38;5;12m (https://github.com/videogamepreservation/descent) - First sci-fi FPS/space shooter to feature entirely true 3D graphics. Written in C and assembly.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDescent II[0m[38;5;12m (https://github.com/videogamepreservation/descent2) - Sequel to Descent. Written in C and assembly.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mDoom[0m[38;5;12m [39m[38;5;12m(https://github.com/id-Software/DOOM)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSci-fi[39m[38;5;12m [39m[38;5;12mFPS[39m[38;5;12m [39m[38;5;12mdeveloped[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mid[39m[38;5;12m [39m[38;5;12mSoftware[39m[38;5;12m [39m[38;5;12mwhere[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mfight[39m[38;5;12m [39m[38;5;12mdemons[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mhell[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mMars.[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mDOS-specific[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mDoom[39m[38;5;12m [39m[38;5;12mcould[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mpublished[39m[38;5;12m [39m[38;5;12mbecause[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdependency[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mlicensed[39m[38;5;12m [39m[38;5;12mDMX[39m[38;5;12m [39m[38;5;12msound[39m[38;5;12m [39m[38;5;12mlibrary,[39m[38;5;12m [39m[38;5;12mhence[39m[38;5;12m [39m
|
||
[38;5;12mwhy[39m[38;5;12m [39m[38;5;12mit's[39m[38;5;12m [39m[38;5;12mcleaned[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mLinux[39m[38;5;12m [39m[38;5;12msource[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mthere.[39m[38;5;12m [39m[38;5;12mHowever,[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mHeretic[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mHexen[39m[38;5;12m [39m[38;5;12mprojects[39m[38;5;12m [39m[38;5;12mcontain[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moriginal[39m[38;5;12m [39m[38;5;12mDOS[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mway[39m[38;5;12m [39m[38;5;12mwhere[39m[38;5;12m [39m[38;5;12mDMX-related[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mremoved.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDuke Nukem 3D[0m[38;5;12m (https://web.archive.org/web/20190304015745/https://www.classicdosgames.com/game/Duke_Nukem_3D.html) - FPS developed by Apogee featuring the iconic character Duke Nukem. Written in C. Compiled with Watcom C/C++ 10.0.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mSource code download link[0m[38;5;12m (https://web.archive.org/web/20160403223736/http://www.classicdosgames.com/files/source/duke3dsource.zip)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHeretic[0m[38;5;12m (https://github.com/OpenSourcedGames/Heretic) - Dark fantasy FPS running on id Software's Doom engine.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHexen: Beyond Heretic[0m[38;5;12m (https://github.com/OpenSourcedGames/Hexen) - Indirect sequel to Heretic.[39m
|
||
[38;5;12m - Original [39m[38;5;14m[1mSourceForge link[0m[38;5;12m (https://sourceforge.net/projects/heretic/files/) for Heretic/Hexen.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHovertank 3D[0m[38;5;12m (https://github.com/FlatRockSoft/Hovertank3D) - FPS developed by id Software. Features pseudo-3D graphics with raycasting technique, before Catacomb 3D and Wolfeinstein 3D. Written in C and assembly.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mQuake[0m[38;5;12m (https://github.com/id-Software/Quake) - FPS developed by id Software set in a fully 3D world. Written in C. Compiled with DJGPP for DOS.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mQuake Engine Code Review series[0m[38;5;12m (https://fabiensanglard.net/quakeSource/index.php) - Code analysis by Fabien Sanglard.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mRise[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mthe[0m[38;5;14m[1m [0m[38;5;14m[1mTriad:[0m[38;5;14m[1m [0m[38;5;14m[1mDark[0m[38;5;14m[1m [0m[38;5;14m[1mWar[0m[38;5;12m [39m[38;5;12m(https://github.com/videogamepreservation/rott)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFPS[39m[38;5;12m [39m[38;5;12mdeveloped[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mApogee.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12mdeveloped[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfollow-up[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mWolfenstein[39m[38;5;12m [39m[38;5;12m3D,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mwas[39m[38;5;12m [39m[38;5;12maltered[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mbecame[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mstandalone[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12minstead.[39m[38;5;12m [39m[38;5;12mUses[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mheavily[39m[38;5;12m [39m[38;5;12mmodified[39m[38;5;12m [39m[38;5;12mWolfenstein[39m[38;5;12m [39m
|
||
[38;5;12m3D[39m[38;5;12m [39m[38;5;12mengine.[39m[38;5;12m [39m[38;5;12mWritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mC.[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mSopwith[0m[38;5;12m [39m[38;5;12m(https://web.archive.org/web/20200131222432/http://davidlclark.com/page/sopwith)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mSide-scrolling[39m[38;5;12m [39m[38;5;12mshoot[39m[38;5;12m [39m[38;5;12m'em[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mcreated[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mDavid[39m[38;5;12m [39m[38;5;12mL.[39m[38;5;12m [39m[38;5;12mClark[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12m1984.[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mgame[39m[38;5;12m [39m[38;5;12minvolves[39m[38;5;12m [39m[38;5;12mpiloting[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mSopwith[39m[38;5;12m [39m[38;5;12mbiplane,[39m[38;5;12m [39m[38;5;12mattempting[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbomb[39m[38;5;12m [39m[38;5;12menemy[39m[38;5;12m [39m[38;5;12mbuildings[39m[38;5;12m [39m[38;5;12mwhile[39m[38;5;12m [39m
|
||
[38;5;12mavoiding[39m[38;5;12m [39m[38;5;12mfire[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12menemy[39m[38;5;12m [39m[38;5;12mplanes[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mvarious[39m[38;5;12m [39m[38;5;12mother[39m[38;5;12m [39m[38;5;12mobstacles.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mMaiZure's Projects - Decoded: Sopwith[0m[38;5;12m (https://web.archive.org/web/20201211175311/https://www.maizure.org/projects/decoded-sopwith/) - Code analysis by MaiZure.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mWolfenstein 3D[0m[38;5;12m (https://github.com/id-Software/wolf3d) - FPS developed by id Software set in the Nazi German prison Castle Wolfenstein. Features pseudo-3D graphics with raycasting technique. Written in C and assembly.[39m
|
||
|
||
[38;2;255;187;0m[4mDrivers and emulators[0m
|
||
|
||
[38;2;255;187;0m[4mSound card emulators[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mSBEMU[0m[38;5;12m (https://github.com/crazii/SBEMU) - A TSR that emulates Sound Blaster and OPL3 in pure DOS using modern PCI-based (onboard and add-in card) sound cards. Supports both real mode and protected mode games![39m
|
||
[38;5;12m- [39m[38;5;14m[1mVSB[0m[38;5;12m (https://github.com/Baron-von-Riedesel/VSBHDA) - A fork of SBEMU (see above), which also aims to offer Sound Blaster emulation for modern PC hardware, in both real mode and protected mode games.[39m
|
||
|
||
|
||
[38;5;12mdos Github: https://github.com/balintkissdev/awesome-dos[39m
|