KeyFansClub

首页 » - 特色讨论区 - » 土豆星 » 土卫三 » KeyFC汉化公式论坛 » 求助:关于DS版星之梦的制作问题。
ailinzhe - 2009/11/3 14:25:00
求助:关于DS版星之梦的制作问题。

想问一下KFC的大大,这个星之梦的制作问题。

游戏的结构我看了一下,有个问题想问。

游戏的arm9.bin、arm7.bin这些文件是怎么来的。

是有什么工具吗?如果方便的话可以告诉我吗?

我以为是用的 AVG MAKER DS 制作的星之梦。

但好像不是,望各位知情人士解惑。

谢谢!
AleiPhoenix - 2009/11/3 15:42:00
DS版貌似是个人性质的移植,直接从PC改的。可以问下作者。(好像不是常看到。)
ailinzhe - 2009/11/3 17:08:00
谢谢。
不过那作者可能是找不着哦。
AleiPhoenix - 2009/11/3 21:22:00
原来的发布帖(貌似是KFC首发)
http://www.keyfc.net/bbs/showtopic-27940.aspx

不过作者貌似不常来,可以短消息留言试试。
Koori - 2009/11/4 0:58:00
是通过“形势代码”arm7和arm9的cpp文件编译过来的

ARM7.cpp
ARM7是唯一与CPU联动控制屏幕的。可以为ARM9提供触摸屏自变量的取值。同时它还可以获取屏幕点击位置进而实例化类成员变量(当然,这是理论上的,具体的实践咱还不是很清楚德说,我只是照葫芦画瓢而已……= =|||)。一般是把它放在main里面的……= =|||
  1. int main(int argc, char ** argv) {
  2.   // 计时器重置  rtcReset();

  3.   // 打开声音
  4.   SOUND_CR = SCHANNEL_ENABLE | SOUND_VOL(0x7F);
  5.   IPC->soundData = 0;

  6.   IME = 0;
  7.   IRQ_HANDLER = &InterruptHandler;
  8.   IE = IRQ_VBLANK;
  9.   IF = ~0;
  10.   DISP_SR = DISP_VBLANK_IRQ;
  11.   IME = 1;

  12.   // Keep the ARM7 out of main RAM
  13.   while (1) swiWaitForVBlank();
  14.   return 0;
  15. }
复制代码
ARM9.cpp
ARM9只出现在main函数里,目的是让DS在使用屏幕前,先设置屏幕的显示模式。
比如:
  1. powerON(POWER_ALL);
  2.  
  3.   // 主屏显示模式
  4.   videoSetMode(MODE_0_2D | DISPLAY_BG0_ACTIVE);
  5.   vramSetBankA(VRAM_A_MAIN_BG);
  6.   BG0_CR = BG_MAP_BASE(31);

  7.   // 将前景色设置为白色
  8.   BG_PALETTE[255] = RGB15(31,31,31);

  9.   // 与下屏交互
  10.   lcdSwap();

  11.   consoleInitDefault((u16*)SCREEN_BASE_BLOCK(31), (u16*)CHAR_BASE_BLOCK(0), 16);
  12. ...........
复制代码
我刚开始看没多久,很多还没弄明白,不过希望这些对你有帮助……
1
查看完整版本: 求助:关于DS版星之梦的制作问题。