我需要在 Windows 中编译一个 Game Boy ROM。这是怎么做的?我在谷歌上到处找,只发现死链接。
2 回答
那里有很多不同的选择。首先,您需要决定您是使用汇编还是 C 进行编程。到目前为止,C 是更容易的选择,尤其是如果您以前从未使用过汇编。对于下面的示例,我假设您使用 GBDK ( http://gbdk.sourceforge.net/ ) 从 C 编译。
这是一个示例构建命令。我假设您使用的是 linux 环境,并且您已将开发工具包放入 /opt 但只需将正确的位置替换为 lcc 或 lcc.exe 可执行文件:
/opt/gbdk/bin/lcc -Wa-l -Wl-m -o output.gb input.c
这应该很好用,但让我分解一下,以便您了解为什么要发送这些论点。
(-W
区分大小写)允许您向汇编器、链接器或编译器发送参数:
第一个参数 - -Wa-l
- 将参数发送给汇编器-l
,以便让它生成一个列表输出文件(例如,与目标文件相反)。
第二个参数 --Wl-m
将参数发送给链接器-m
,以生成映射文件(出于各种原因很有用)。
第三个参数是-o
,它将生成构建的输出二进制文件 (ROM)。您可能希望它以 .gb 结尾,因为这是您的模拟器或闪存车将运行的实际文件。
最后,您需要指向您的源代码。非常简单。
此页面上有一个工作链接:
首先,您必须下载这些编译器文件:
agb-win-binutils-r4.zip (2.3MB)
agb-win-core-r5.zip (481kB)
agb-win-gcc-r4.zip (2.4MB)
agb-win-newlib-r4.zip (3.8MB)
这些文件可以在这里找到。
只有“agb-win-core-r5.zip”在“Release 5”部分。
下载这些文件后,将它们解压缩到您的操作系统目录中。例如:- 'C:\'
。这将创建另一个名为“devkitadv”的文件夹。在记事本中创建一个“start.bat”文件并添加以下代码(如果您使用的是 Windows XP 或更高版本):
set PATH=c:\devkitadv\bin;%PATH%
cmd
将其保存在“devkitadv”目录中。接下来,在记事本中创建一个“make.bat”文件,然后键入以下代码:
set path=C:\devkitadv\bin;%path%
gcc -o <file_name>.elf <file_name>.c -lm
objcopy -O binary <file_name>.elf <file_name>.gb
pause
将其保存在程序目录中后,运行“make.bat”程序。这应该会创建一个已编译的 ROM 文件以及一个“.elf”文件。您可以使用游戏模拟器 VisualBoy Advance 来测试您的 ROM 文件。希望这可以帮助。