如何在旧游戏机上编程? [关闭]

问题描述 投票:20回答:3

我想知道如何编程到旧游戏机上玩耍。

我可以使用C之类的编程语言吗?我需要使用汇编程序吗?我不知道任何控制台编译器,汇编器或API。我将需要编译成ROM映像并使用仿真器进行测试,因为我没有任何控制台。

每个控制台都有其有趣的功能,我想和他们一起玩。

  • Atari 2600(仅128字节的RAM)
  • NES(仅8位)
  • SNES(一个好的控制台,16位)
  • PS1(3D,复杂)
  • 游戏男孩(简单,单色)
compiler-construction hardware video-game-consoles
3个回答
3
投票

[Atari,NES和GameBoy等较旧的系统通常是用Assembly或C编程的。我玩过的GameBoy有多种开发工具,例如:

Rednex Gameboy Development(ASM):http://www.otakunozoku.com/rednex-gameboy-development-system/GBDK(C):http://gbdk.sourceforge.net/

尽管上面有很多无效的链接,但此页面通常具有许多有关GameBoy开发的良好信息和链接:http://www.devrs.com/gb/

对于NES,我知道两个组装教程。第二篇教程从第一篇开始就链接到了它,它声称它是上乘的,但是我不能真正评论,因为上次我对该主题感兴趣时第二篇链接不存在。http://www.patater.com/nes-asm-tutorialshttp://www.nintendoage.com/forum/messageview.cfm?catid=22&threadid=7155(此链接不再有效)

如果您觉得它不是太新,那么GBA有很多很棒的自制资源,通常使用C进行编程。GBA上的大量信息使其成为一个不错的起点:

[DevKitPro为GBA开发提供了完整的GNU工具链(DevKitARM + libgba):http://www.devkitpro.org/

TONC是GBA的非常好的指南,有很多详细的解释:http://www.coranac.com/tonc/text/

最后,是详细介绍GBA硬件的必不可少的gbatek表。这将告诉您必须使用GBA上的哪些寄存器来更改图形模式,声音模式,使用中断等。http://nocash.emubase.de/gbatek.htm

这些较旧游戏系统的编程与编程微控制器有很多共同点。如果没有某种抽象层,则您必须对寄存器进行很多按位操作,以进行最基本的操作。

编辑:在进行GBA编程时遇到的主要问题是弄清楚声音寄存器的工作原理。就教程而言,这确实是一个盲点。当时最好的资源是研究gbatek表和以下站点:http://deku.rydia.net/program/sound1.htmlhttp://belogic.com/gba/


0
投票

控制台的制造商为机器的处理器提供了自己的工具/编译器(SDK),因为它们(大多数时候)是高度专业化的。

但是大多数时候,您将使用C / C ++进行编码。我敢肯定,您将需要更多的时间,而不必诉诸ASM。

尝试此链接:http://www.emuparadise.me/sdk/index.php

Google关键字:sdk,控制台,自制软件,独立软件


0
投票

还有另外一些“开放式”自制控制台,其设计与过去的机器类似,但是更容易访问信息和更友好的工具。

[XGameStation Pico之类的东西将带给您与Atari 2600类似的体验,而Micro Edition的功能要强大得多,并附带有关与之相似的控制台如何工作的文档。

如果您不明确地寻求开发大规模的商业发布的控制台,这些控制台可能是一个很好的选择,并且可能是嵌入式编程新手的更好的学习工具。

© www.soinside.com 2019 - 2024. All rights reserved.