我正在从事一个需要为IBM PS/2 Model 30 286开发软件的项目(http://en.wikipedia.org/wiki/IBM_Personal_System/2#Models)。我想知道如何为这个系统编译程序。我需要能够渲染图形,但我不确定从哪里开始。以下是我如何着手做这件事的一些想法。欢迎提出任何意见和/或建议。
- 找到一个可以在这台机器上运行的软件(最好是游戏)的源代码。
- 反编译现有程序(理想情况下是一个游戏)并拆分其内部工作。 如果我能弄清楚如何编译C程序,那么:
- 查找驱动程序文档
- 弄清楚是否有一个现有的库,我可以利用渲染图形。
- 如果我能找到一种方法来编译这个系统,而不必在系统上运行编译器,然后:
- 在我的PC上模拟我的程序,然后在IBM PS/2上编译我的程序。
哎呀,我可以在这个系统上运行DOS。计算机附带的手册没有说明运行哪个程序进行编译。
DOS不包括编译器,这就是为什么在文档中没有提到它(尽管PS/2确实有ROM BASIC)。你必须单独获得一个。当时有很多选择,现在还有一些。这里有几个或多或少可用的IMO:
-
DJGPP是GCC到DOS的一个端口。但是,它需要80386,因此不适合这里。
-
OpenWatcom是一个C/c++编译器,可以针对16位DOS。你可以在PS/2上运行这些工具,或者从Windows或Linux上交叉编译二进制文件。
-
Turbo Pascal和Turbo c++的旧版本可从Embarcadero软件博物馆获得。
这些都是当时非常好的编译器,包括一个很好的文本模式IDE和集成的交互式调试器。 Quick Basic是微软为DOS开发的一个Basic编译器。
Microsoft Visual c++ 1.52是支持16位DOS和Windows编程的最后一个Visual c++版本,显然MSDN用户仍然可以使用。