我之前正在阅读这个答案,这让我有兴趣购买Nintendo DS Lite来学习编程嵌入式设备.在我出去挥霍DS之前,我有几个问题:
您可以编程的是否有任何限制?我之前表示的帖子似乎说没有,但澄清会很好.
我会更好地购买arduino(或类似的)并走这条路吗?我喜欢DS,因为它已经内置了很多硬件.
我正在考虑购买CycloDS Evo卡,自制软件有更好的选择吗?
有关DS开发的最佳资源有哪些?
感谢您的时间,如果您有DS和程序,我会爱你听到你的意见,或者如果你有更好的想法,我也想听听它.
谢谢=]
带有开发板的.NET Micro Framework与嵌入式编程的Arduino或Nintendo DS相比如何?
.net microcontroller arduino .net-micro-framework nintendo-ds
我正在尝试使用devkitPro(包括libnds,libarm等)将sprite和背景进行alpha混合.
有谁知道如何做到这一点?
好吧,我正在尝试在C++中为DS-DSi做一个小游戏.只是为了好玩,感到快乐.
我想知道是否有任何指南或我可以得到一些帮助开始.我不知道它是如何工作的或如何使它在DS上启动.
谢谢〜
据我所知,在DS上运行的代码必须加载到RAM中,因此从已经限制的4M开始.有没有办法直接从图像运行DS代码?
注意:我对GCC工具链知之甚少,所以这个问题可能没有多大意义.
由于GCC包含Ada前端,并且它可以发出ARM,而devKitPro基于GCC,是否可以使用Ada而不是C/C++在DS上编写代码?
编辑:似乎devKitARM使用的目标是arm-eabi.
我知道这有点与众不同,但是我想尝试找出如何读取Nintendo DS游戏的元数据?在计算机上时,它们具有.nds
扩展名。
我正在尝试使用一些自制游戏,并且想建立一个图书馆。C#是我更喜欢使用的语言。
我尝试在互联网上进行研究,发现最接近的选项是读取文件头。但是,考虑到游戏文件应该具有标题和图像,因此我所接近的只是将其作为标题的一部分。
我知道可以做到这一点,因为有一些用c#编写的程序已经做到了。那么,有人知道吗?非常感谢您的帮助。
我一直在努力解决这个问题.我正在尝试使用devKitPro确定我的NDS屏幕上模型中顶点的屏幕坐标.该库似乎实现了OpenGL的一些功能,但特别是缺少gluProject函数,这将(我假设)允许我轻松地完成.
我一直在努力尝试使用存储在DS寄存器中的投影基质来手动计算屏幕坐标,但是我没有太多运气,即使在尝试从头开始构建投影矩阵时也是如此OpenGL的文档.这是我正在尝试使用的代码:
void get2DPoint(v16 x, v16 y, v16 z, float &result_x, float &result_y)
{
//Wait for the graphics engine to be ready
/*while (*(int*)(0x04000600) & BIT(27))
continue;*/
//Read in the matrix that we're currently transforming with
double currentMatrix[4][4]; int i;
for (i = 0; i < 16; i++)
currentMatrix[0][i] =
(double(((int*)0x04000640)[i]))/(double(1<<12));
//Now this hurts-- take that matrix, and multiply it by the projection matrix, so we obtain
//proper screen coordinates.
double f = 1.0 / tan(70.0/2.0);
double aspect = 256.0/192.0; …
Run Code Online (Sandbox Code Playgroud) 我正在尝试Nintendo DS编程,我有一个main.cpp文件,一个snake.h文件和一个snake.cpp文件.当我编译(使用Makefile)时,我得到了
/home/david/Dropbox/sources/ds/04_snake/source/snake.cpp:228: undefined reference to `printBlock(int, int, unsigned short, int)'
/home/david/Dropbox/sources/ds/04_snake/source/snake.cpp:230: undefined reference to `printBlock(int, int, unsigned short, int)'
Run Code Online (Sandbox Code Playgroud)
这是函数中的错误
void drawSnake(game g) {
int i;
printBlock(g->s->last[0], g->s->last[1], g->bgColor, g->block);
for(i=0; g->s->points[i][0]!=-1 && i<MAXLENGHT; i++)
printBlock(g->s->points[i][0], g->s->points[i][1], g->s->color, g->block);
return;
}
Run Code Online (Sandbox Code Playgroud)
但是在同一个文件中,我有大约100行
int printBlock(game g, int x, int y, u16 color, int thickness) { /*code*/ }
Run Code Online (Sandbox Code Playgroud)
如果我注释我使用printBlock的行(在drawSnake函数中),代码编译没有错误.我试图改变名称,改变位置,但我无法理解为什么只有那个函数给我错误.