多码网
返回 平台与框架
平台与框架

Awesome dos

用于基于 x86 的个人计算机的操作系统,在 1980 年代和 90 年代初期流行.

Awesome dos

Awesome DOS Awesome

用于基于 x86 的个人计算机的操作系统,在 1980 年代和 90 年代初期流行.

用于开发 DOS 应用程序和了解系统本身的精选参考列表. 这包括 编译器列表、教程、视频、免费和付费书籍的链接以及 DOS 游戏的源代码. 这个列表的目标 是收集信息并作为想要开始为 DOS 进行逆向编程的人的起点 platform.

Development tools

  • bcc - Bruce's Compiler - Bruce 的 C 编译器是一个简单的 C 编译器,可为微型/小型内存模型生成 8086 汇编器.
  • DJGPP - DJ Delorie 针对 Intel 80386 的完整 32 位 C/C++ 开发环境.用于 Quake.
  • Open Watcom - 以前用于 16 位和 32 位 DOS 的商业 C/C++ 开发环境和 视窗. 目前正式版为1.9. GitHub 分支也可用. 用于 Doom I-II、Warcraft I-II、Duke Nukem 3D、Full Throttle、Dark Forces 和 Retro City Rampage.
  • documentation 对于理解使用版本 1.9 和 V2 分支非常有价值.
  • Arch Wiki page
  • Open Watcom V2 - 积极维护的 GitHub 分支 移植到 64 位 Windows 和 Linux.
  • Turbo C 2.01 - Borland 的 C IDE 和编译器于 1987 年首次发布.
  • Turbo C++ 1.01 - Borland 于 1991 年发布的 C++ IDE 和编译器.
  • DIV Games Studio 2 - 用于开发 2d、模式 7 和 3d 的 DOS 游戏的 IDE. 1998 年上映.
  • Online version.
  • T3X - Nils M. Holm 的一种小型、可移植、过程化、块结构、递归、几乎无类型且在某种程度上面向对象的编程语言.
  • SmallerC - 能够为多种平台生成可执行文件的便携式自托管 C 编译器,包括实模式和保护模式 DOS 程序,由 Alexei A. Frounze 编写.
  • Small-C Toolkit - 用于 DOS(8086) 的自托管小型 C 编译器工具包,带有:K&R C 编译器、Make、链接器、汇编器. 1982 年由 Jim E. Hendrix 首次发布.

Memory managers

Scripting languages and interpreters for DOS

  • DOjS - 适用于 MS-DOS、FreeDOS 或任何基于 DOS 的 Windows(如 95、98、ME)的 JavaScript 编程环境.
  • Lua for DOS - Lua 5.3.5 的在线演示,在 Intel 80486 处理器上为 MS-DOS 编译.
  • Micropython for FreeDOS - FreeDOS ad-hoc 模块 micropython.
  • perldos - 适用于 DOS 的 Perl.
  • PythonD - 适用于 DOS 的 Python,包括多线程、网络和 OpenGL.

Tutorials and programming resources

History

Compiling

General

DOS API

  • bios.h header documentation by Digital Mars - 直接访问 BIOS 操作(磁盘操作、BIOS 键盘、打印机、时间、内存、串行、中断)的例程的 API 文档.
  • Digital Mars 的 dos.h 头文档 Part 1 Part 2 - 与 DOS 操作系统本身接口的函数的 API 文档.

Interrupts

Video

  • Values for standard video mode - 所有已知视频模式的列表,包括 BIOS 中断号、文本/像素分辨率、颜色数和视频内存地址.

CGA

VGA

SVGA

Sound

PC Speaker

AdLib/OPL2

Sound Blaster/OPL3

Other

Books

Free

Videos

Open source DOS libraries

  • Allegro 4.2 - 适用于 DOS、Windows 和 Linux 的游戏开发库.
  • LoveDOS - 在 Lua 中制作 2D DOS 游戏的框架. API 基于 LÖVE API 的一个子集.
  • DOS-VGA-Game - Marco A. Marrero 在汇编和 Turbo Pascal 中实现的 DOS VGA/硬件库.
  • DIGPAK sound drivers source code - 由 John W. Ratcliff 上传到 GitHub 的 DIGPAK 声音驱动程序的原始源代码.

Open source DOS games

Homebrew games with source code

所有自制 DOS 游戏列表:http://www.doshaven.eu

  • DOS Defender - Christopher Wellons's x86 real mode DOS Asteroids clone created as an entry for Lundum Dare #31.
  • Dungeons of Noudar - 保护模式下的第一人称 2.5D 地牢探索者. 用 C++ 编写,包括软件渲染、定点数学、测试范围和声音(PC 扬声器、Adlib、OPL2LPT).
  • Emeritus Pong - 适用于 DOS、Windows 和 Linux 的 Pong 克隆. 在 DOS 上使用 PC 扬声器播放声音.
  • Floppy Bird - 用 16 位汇编编写的 Flappy Bird 克隆. 不是 DOS 程序,而是 PC-Booter 应用程序(尽管也可以为 DOS 构建 COM 可执行文件).
  • George M. Tzoumas's collection of MS-DOS games and utilities - Turbo Pascal,带有少量 C 和 C++ 游戏. 游戏包括 Nibbles、Connect Four、Ms Pacman clone 和两款街机/平台游戏. 其中之一 (ra2) 是使用 Allegro 编写的. 实用程序全部用 Turbo Pascal 编写,包括游戏系统例程、文件和磁盘实用程序以及终止和驻留程序 (TSR).
  • Gridfighter 3D - 用 Quickbasic 编写的 80 年代风格街机射击游戏. 也是已知的第一个支持 Oculus Rift VR 耳机的 DOS 游戏.
  • GitHub repository
  • Hangman - 用 Basic 编写的 Hangman 克隆. 在至少 80286 处理器上运行并使用 EGA 图形.
  • Magenta's Maze - 以代数为题材的CGA图形3D迷宫游戏.
  • Source code download link
  • NetHack - 原始人的后代 NetHack rougelike 游戏于 1987 年首次发布,可在多个平台上使用.
  • Piskworks - 用 C 编写的 Gomoku 克隆.适用于 DOS、ZX Spectrum、ZX81、ZX80、APPLE1、AS400 和 Windows.
  • Plutonium Caverns - 用C编写的架空益智游戏.网页版使用 DOSBox ported to Emscripten 将 DOSBox 嵌入到 HTML5 中. 但是,原始可执行文件也可以使用 Open Watcom 下载和构建.
  • Ptakovina - 用 C 语言编写的俄罗斯方块克隆版.可在 DOS、Unix/Linux、ZX Spectrum 和 Windows 上运行.
  • sudoku86 - 用 C 编写的数独克隆.在 8086/8088 CPU 上运行,使用 CGA、MCGA 或 VGA 图形并使用鼠标.
  • Tetris - 用汇编编写的俄罗斯方块克隆.
  • Source code download link
  • Towers of Hanoi - Tower of Hanoi 用 Turbo Pascal 编写的益智游戏. 最初于 1996 年发布.
  • x86 pong - 用 C 编写的文本模式 Pong 克隆.在 DOS 下作为 PC-Booter 游戏运行.
  • zmiy - 用 C 编写的文本模式 Snake 克隆.在 8086 DOS 上运行.

Freeware games with source code

  • Cyberdogs - 自上而下的 2D 射手扮演雇佣兵来赚钱. 用 Turbo Pascal 编写. 支持两种播放器模式.
  • Source code download link
  • C-Dogs - 原版 Cyber​​dogs 的续集. 原作者 Ronny Wester 不再维护原 C-Dogs 的网站,但存在多个端口,包括 cdogs-sdl.

Commercial games with published source code

  • Abuse - 科幻横向卷轴平台游戏. 被大多数人视为创新的邪教经典. 支持高达 1280x1024 分辨率的 SVGA 模式. 该架构以 C 语言编写,包括一个 Lisp 脚本引擎.
  • Source code download link
  • Beneath a Steel Sky - 设置在反乌托邦未来的点击式冒险游戏. 写在汇编中.
  • Source code download link
  • Catacomb - 由 Softdisk(后来成为 id Software)开发的 2D 俯视射击游戏. 支持 EGA 和 CGA 图形. 用 Turbo Pascal 和汇编语言编写.
  • Catacomb 3D - 由 Softdisk(后来成为 id Software)开发的第一人称射击游戏. 具有采用光线投射技术的伪 3D 图形. 支持 EGA 图形. 用 C 语言和汇编语言编写. 用 Borland C++ 3.1 编译.
  • Commander Keen in Keen Dreams - id Software 开发的横向卷轴平台游戏. Keen Dreams 是在 Keen 3 和 Keen 4(通常被认为是“Keen 3.5”)之间创建的指挥官 Keen 游戏,但并未广泛发布. 用 C 语言和汇编语言编写.
  • Descent - 第一款具有完全真实 3D 图形的科幻 FPS/太空射击游戏. 用 C 语言和汇编语言编写.
  • Descent II - 后裔的续集. 用 C 语言和汇编语言编写.
  • Doom - 由 id Software 开发的科幻第一人称射击游戏,您可以在其中与来自火星地狱的恶魔作战. 由于依赖于获得许可的 DMX 声音库,因此无法发布 Doom 的特定于 DOS 的代码,因此它被清理并且只有 Linux 源代码在那里. 但是,Heretic 和 Hexen 项目包含原始 DOS 代码,其中删除了与 DMX 相关的代码.
  • Duke Nukem 3D - 由 Apogee 开发的第一人称射击游戏,主角是毁灭公爵. 用 C 语言编写.使用 Watcom C/C++ 10.0 编译.
  • Source code download link
  • Heretic - 在 id Software 的 Doom 引擎上运行的黑暗幻想 FPS.
  • Hexen: Beyond Heretic - Heretic 的间接续集.
  • 原来 SourceForge link for Heretic/Hexen.
  • Hovertank 3D - 由 id Software 开发的 FPS. 在 Catacomb 3D 和 Wolfeinstein 3D 之前,采用光线投射技术的伪 3D 图形. 用 C 语言和汇编语言编写.
  • Quake - 由 id Software 开发的 FPS 设置在全 3D 世界中. 用 C 编写.用 DJGPP 为 DOS 编译.
  • Quake Engine Code Review series - Fabien Sanglard 的代码分析.
  • Rise of the Triad: Dark War - Apogee 开发的第一人称射击游戏. 它是作为 Wolfenstein 3D 的后续游戏开发的,但经过修改并成为一款独立游戏. 使用经过大量修改的 Wolfenstein 3D 引擎. 用C写的.
  • Sopwith - 由 David L. Clark 于 1984 年创建的横向卷轴射击游戏.该游戏涉及驾驶 Sopwith 双翼飞机,试图轰炸敌方建筑物,同时避开敌机和各种其他障碍物的火​​力.
  • MaiZure's Projects - Decoded: Sopwith - MaiZure 的代码分析.
  • Wolfenstein 3D - 由 id Software 开发的第一人称射击游戏,场景设置在纳粹德国监狱德军总部. 具有采用光线投射技术的伪 3D 图形. 用 C 语言和汇编语言编写.

相关项目