Hacker News 中文摘要

RSS订阅

MS-DOS 开发资源 -- MS-DOS development resources

文章摘要

该文章介绍了MS-DOS开发的资源,重点推荐了DJGPP和OpenWatcom两款编译器。DJGPP是一个完整的32位C/C++开发系统,适用于运行DOS的Intel 80386及以上PC,包含许多GNU开发工具,生成的程序可商业销售。OpenWatcom也是推荐的开发工具之一。文章还提供了相关项目的链接,如DJGPP的项目页面、Linux上的交叉编译器创建指南以及RHIDE集成开发环境。

文章总结

MS-DOS开发资源概览

本文介绍了一系列用于MS-DOS开发的资源,涵盖了编译器、解释器/框架、库、模拟器、操作系统以及其他工具和文档。以下为主要内容:

编译器

  1. DJGPP:一个完整的32位C/C++开发系统,适用于运行DOS的Intel 80386及以上PC。生成的程序通常可以商业销售,无需许可证或版税。
  2. OpenWatcom:开源的Watcom C/C++和FORTRAN 77编译器,支持生成16/32位DOS和Windows的EXE文件。
  3. FreeBASIC:免费开源的BASIC编译器,支持Windows、DOS和Linux。
  4. BCC:生成8086汇编的C编译器,适用于小型模型。
  5. GCC-IA16:针对Intel 16位x86的GNU编译器移植。

解释器/框架

  1. DOjS:基于JavaScript的MS-DOS创意编码IDE/平台。
  2. LoveDOS:用于在Lua中制作2D DOS游戏的框架,基于LÖVE API的子集。
  3. QBASIC:微软开发的编程语言,适用于MS-DOS操作系统。

  1. lib16:用于OpenWatcom的小型16位DOS库。
  2. AllegroXC:Allegro 4.2.2的分支,用于DOS游戏开发的交叉编译。
  3. PCTIMER:提供毫秒级精度的计时功能,适用于DJGPP V2和DPMI。
  4. GLIDE3:3Dfx Glide的源代码,适用于Voodoo图形加速器。
  5. Watt-32:TCP/IP库及示例。
  6. mTCP:用于PC-DOS、MS-DOS、FreeDOS等的TCP/IP应用程序集。
  7. AllegroPNG:用于在Allegro多媒体库中显示PNG图像的库。
  8. DZCOMM:用于DOS、Linux和SunOS的串行I/O API。
  9. perlin-noise:Perlin噪声的各种实现(C和C++)。
  10. kuba zip:用C编写的便携式简单zip库。
  11. zlib:通用的无损数据压缩库。
  12. libjpeg:JPEG压缩/解压缩库。
  13. micromod:用于MOD、S3M和XM格式的音乐播放库。
  14. ini:用于加载.ini配置文件的微型ANSI C库。

模拟器

  1. DOSBox-staging:DOSBox的现代延续,支持现有配置和许多高级功能。
  2. DOSBox-X:开源的DOS模拟器,用于运行DOS应用程序和游戏。
  3. 86Box:低级别的x86模拟器,支持从1981年到基于PCI总线设计的旧操作系统和软件。
  4. PCEm:PC硬件模拟器。

操作系统

  1. FreeDOS:开源的DOS兼容操作系统,支持运行经典DOS游戏、遗留商业软件或编写新的DOS程序。
  2. Win98 Quick install:快速安装Windows 98的框架和安装程序。

其他工具

  1. Fontána:位图字体编辑器,支持从某些矢量格式导入字体。
  2. Doszip:支持长文件名的TUI文件管理器,内置Zip和UnZip功能。

文档

  1. ctyme:Ralf Brown中断列表的HTML版本,包含所有已知的中断调用。
  2. HelpPC Reference Library:David Jurgens的DOS超文本程序的HTML版本。
  3. FreeVGA:硬件级别的VGA和SVGA视频编程信息页面。
  4. SoundBlaster guide:Sound Blaster系列硬件编程指南。
  5. Basic Gravis UltraSound Programming:Gravis Ultrasound硬件编程参考。
  6. Glide 3.0 Programming Guide:3Dfx Glide™ 3.0编程指南。

这些资源为MS-DOS开发者提供了丰富的工具和参考资料,涵盖了从编译器到模拟器的各个方面。

评论总结

评论主要围绕MS-DOS生态系统及其开发工具展开,观点多样且涉及多个方面。以下是总结:

  1. 对MS-DOS工具的兴趣与认可

    • 评论1提到对MS-DOS生态系统的工具感到兴奋,特别是开源的Watcom编译器和16位库。
      "I really enjoyed seeing the tools that provide an MS-DOS ecosystem."
    • 评论3指出Free Pascal编译器也能生成DOS可执行文件。
      "The Free Pascal compiler can produce DOS executables as well."
  2. 对模拟器和开发工具的补充

    • 评论2提到pcjs.org网站可以模拟多种机器,但存在配置困难。
      "it is confusing and presents some difficulty when trying getting it to work."
    • 评论13提到HX DOS Extender允许使用Win32 PE工具开发DOS软件。
      "one may use any tooling that lets you produce Win32 PE exe files."
  3. 对开源与闭源工具的讨论

    • 评论12认为开源工具并非唯一选择,Borland C++ 3.1和Pascal 7.0等闭源工具同样优秀。
      "Seems a bit obsessed with open source when abandonware like Borland C++ 3.1 and Pascal 7.0 are amazing."
    • 评论8提到微软在MS-DOS仓库中提供了1988年的工具链,虽然无源代码但可自由使用。
      "Microsoft included almost a full 1988 toolchain... The license makes it free to use and redistribute."
  4. 对复古计算和硬件的兴趣

    • 评论11提到DOS系统的商业软件丰富,内存模型复杂但有趣。
      "The sheer volume of commercial software... The memory model is quixotic and interesting."
    • 评论12强调真实硬件的重要性,认为模拟器无法完全替代。
      "Emulators are no substitute for the real thing... If something can't work on real hardware, then it's probably make believe."
  5. 对资源和活动的推荐

    • 评论4提到DOSember游戏开发活动,鼓励参与。
      "a DOS game jam was announced recently for a streaming event called DOSember."
    • 评论14推荐PC Games Programming Encyclopedia作为学习资源。
      "Someone needs to add the PC Games Programming Encyclopedia to this list."

总结:评论者对MS-DOS生态系统及其开发工具表现出浓厚兴趣,既有对开源工具的认可,也有对闭源工具的推崇。同时,模拟器、真实硬件和复古计算也成为讨论焦点,并推荐了相关资源和活动。