KeyFC欢迎致辞,点击播放
资源、介绍、历史、Q群等新人必读
KeyFC 社区总索引
如果你找到这个笔记本,请把它邮寄给我们的回忆
KeyFC 漂流瓶传递活动 Since 2011
 

求助:关于DS版星之梦的制作问题。

[ 7751 查看 / 4 回复 ]

求助:关于DS版星之梦的制作问题。

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

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

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

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

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

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

谢谢!
分享 转发
TOP

回复:求助:关于DS版星之梦的制作问题。

DS版貌似是个人性质的移植,直接从PC改的。可以问下作者。(好像不是常看到。)
TOP

回复:求助:关于DS版星之梦的制作问题。

谢谢。
不过那作者可能是找不着哦。
TOP

回复:求助:关于DS版星之梦的制作问题。

原来的发布帖(貌似是KFC首发)
http://www.keyfc.net/bbs/showtopic-27940.aspx

不过作者貌似不常来,可以短消息留言试试。
TOP

回复: 求助:关于DS版星之梦的制作问题。

是通过“形势代码”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. ...........

复制代码
我刚开始看没多久,很多还没弄明白,不过希望这些对你有帮助……
最后编辑Koori 最后编辑于 2009-11-04 01:15:38
克里喵子是一只小黑喵,脖子上有一条水蓝色的蝴蝶结~
TOP