NDS程序设计

引子:

对程序员来说,这又是一个吓人和诱人的题目,但是本文基本上还是以小品文为主,想到哪里写到哪里,没有规划。基本属于自娱自乐。

如果有人想通过这个文章学习NDS编程呢,最好具有一些coding的经验,至少要学过C语言,知道一些先编译后链接、循环语句、选择语句什么的。如果一点都没有Coding的经验,还是放弃在NDS上编程吧。当然,进阶的要求就更多了,大概有如下一些:ARM体系结构、C / C++、GNU工具的使用经验。

很早就有个想法,等我的那本书完稿之后要买个掌机玩玩,被这本书折腾了一年,像块石头一样一直压在胸口喘不过气,现在基本上都已经完稿了,也可以兑现对自己的承诺了。

现在流行的掌机有两个:任天堂的NDS(以及后来的NDS Lite)还有索尼的PSP。具体技术细节不说了,大概就是NDS性能弱一些,但是好玩的游戏多(插一句:CPU是ARM)。PSP功能强大(又插一句:CPU是MIPS),但是好玩的游戏没几个。经过反复权衡折腾,最后我选择了买NDSL,上周全套装备配齐,2300大洋。包括NDSL机子,Super Card烧录卡,1G的SD卡……,还刷了机(后来看了老外的文章才知道,这样是不对滴,这是鼓励盗版的行为,应该受到鄙视,合法的做法是用PassMe)。

整个周末都陶醉在NDSL的游戏中,借助NDS的触摸笔和麦克风,很多游戏都有了不同的玩法,那个任天狗游戏,简直让人着迷,不愧是历史上第五款Fami通满分游戏。

昨天逛NDS论坛www.ndsbbs.com,看到一个高三的小弟弟写的一篇文章(原贴地址:http://www.ndsbbs.com/read.php?tid=9724),他在NDS上运行Hello World。那个小弟弟说,自己的英语不好、看外文资料很头疼,再加上需要用“恐怖的”C++编程,能在NDS上跑Hello World已经到了“极限”了。看完这个东西,coding的这根筋又在作怪,google了一下NDS开发资料,国外的一堆,国内的不多。很快,自己的Hello World也在游戏机上跑起来了。

从此,游戏机变ARM开发板的经理开始了……
NDS <> Nintendo Dual Screen
NDS == Nintendo Development System

正文开始,Here we go !