Skip to main content
GameDev.net gamedev.net
🔒 Locked

Nintendo DS

Started by isiahil Nov 3, 2004 at 10:11 PM 27 replies 7.5k views
Original Post
isiahil
isiahil
I know the DS is not out yet, but does anyone know what language it will use for programming? If not the exact language do u know what language it will be similiaar to?
I don't have to do nothing but live and die, everything else i choose to do- I don't know, but my dad says it alot
Boder
Boder
Just making a guess here, but the Nintendo DS will probably use a type of machine language. It is probably similar to other forms of assembly and I doubt the Nintendo DS will actually use it for programming, but it will use it for executing programs.

The human programmer will probably have access to an assembler and most likely a C compiler.
darookie
darookie
Since the DS features an ARM7STDI (inaccessible) and an ARM9 CPU, the whole GNU toolchain is available as well as the ARM SDK and virtually any compiler that supports the ARM/Thumb target.

This means you will program the DS using C and C++ most of the time with some critical parts in ARM assembly (ARM is a RISC architecture and thus the assembly instruction set is small and developer-friendly; you won't need it much, though).

Boder is correct in that you will not use the DS device for programming. All programming is done on your average desktop machine (even the OS won't matter). Programs are then compiled and linked together with your game resources (gfx, sounds, ...) to a ROM image, which is then either transferred to a re-writable media (flash ROM card) or uploaded to the device with a special linker caple (maybe even without a cable using the wireless capabilities).

Since you won't have access to the official devkit, you should wait until the first emulators are released. You can test your creations on these first and test on hardware once FlashROMS and linker tools are available from third party manufacturers (e.g. 'in-official' devkits as for the GBA).

If you want to get started with Ds development, I'd strongly suggest trying the GBA first. The concepts (embedded development, ROM images, memory-mapped I/O and hardware access, no OS) are the same and mature development tools as well as tons of documentation is available for it. Once familiar with the GBA, you can jumpstart into DS development by just learning how to use a few additional things (like touchscreen, WiFi and the 3D API).

Good luck,
Pat.
isiahil
isiahil
Can i write programs for the ds with visual studio .net 2002. I really want to know can i somehow write code with vb .net and get it transformed into c++ and put on the DS when it comes out?
I don't have to do nothing but live and die, everything else i choose to do- I don't know, but my dad says it alot
darookie
darookie
Quote:
Original post by isiahil
Can i write programs for the ds with visual studio .net 2002. I really want to know can i somehow write code with vb .net and get it transformed into c++ and put on the DS when it comes out?

Maybe. But you'd need a very sophisticated VB.NET to C(++) converter as well as proper system library bindings for VB.NET (which do not exist).

To put it short: You can use VS 2002 as an IDE but you will need to use an ARM-compliant compiler, which is C/C++ only.
Sorry, no VB on the DS.

Good luck anyways,
Pat.
Kafeen
Kafeen
I've read some of the programming docs for it.

The 2D features of it are almost identical to the GBA. I recognised alot of the registers used for it.

The 3D side of it is very similar to what's used for the GameCube.

From looking at it it's going to have some pretty cool features built into the libaries.
wendigo23
wendigo23
Anybody notice in the screenshots there is no texture filtering? Man! My eyes have grown so used to it I can't help but think the graphics look kind of shitty. This coming from Big N fanboy.
iNsEcT
iNsEcT
Yea, I don't think DS supports texture filtering. But I don't think it's that important when playing in such a small screen.
TechnoHydra
TechnoHydra
A friend and I tried two DS's with a demo version of Metroid yesterday. Smooth as silk. 3D graphics were better than I expected. Cut scene movies were nice as well. Really looking foreward to working on this new platform. Touchscreen worked flawlessly and opens up oogles of options for future game designs. (Just think of RPG inventories and stat sheets to manipulate by stylus) Control was like that of a PC FPS. Foreward/Back/Strafe was with control pad, aiming/turning/jumping with stylus. Firing with Trigger button. Also I see the Black and White spell system being used. (IE drawing out spell runes with stylus to fire spells. Enjoy.
Vindicare
Vindicare
I'm working on an assembler with ARM machine target. It will most likely work with DS too.
nagromo
nagromo
Quote:
Original post by darookie
Since the DS features an ARM7STDI (inaccessible) and an ARM9 CPU, the whole GNU toolchain is available as well as the ARM SDK and virtually any compiler that supports the ARM/Thumb target.

This means you will program the DS using C and C++ most of the time with some critical parts in ARM assembly (ARM is a RISC architecture and thus the assembly instruction set is small and developer-friendly; you won't need it much, though).

Boder is correct in that you will not use the DS device for programming. All programming is done on your average desktop machine (even the OS won't matter). Programs are then compiled and linked together with your game resources (gfx, sounds, ...) to a ROM image, which is then either transferred to a re-writable media (flash ROM card) or uploaded to the device with a special linker caple (maybe even without a cable using the wireless capabilities).

Since you won't have access to the official devkit, you should wait until the first emulators are released. You can test your creations on these first and test on hardware once FlashROMS and linker tools are available from third party manufacturers (e.g. 'in-official' devkits as for the GBA).

If you want to get started with Ds development, I'd strongly suggest trying the GBA first. The concepts (embedded development, ROM images, memory-mapped I/O and hardware access, no OS) are the same and mature development tools as well as tons of documentation is available for it. Once familiar with the GBA, you can jumpstart into DS development by just learning how to use a few additional things (like touchscreen, WiFi and the 3D API).

Good luck,
Pat.


We don't have access to the ARM7? Is it used by the system or just turned off to save battery?

Also, the GBA had an ARM7TDMI; if the STDI still supports the same ROMs unaltered what's the difference between the two?

I haven't seen anything about including a Z80, so we probably won't have GB/GBC games on it. I'll have to get a GB emulator for my PDA if I sell my SP and get one of these.
Pxtl
Pxtl
Quote:
Original post by TechnoHydra
A friend and I tried two DS's with a demo version of Metroid yesterday. Smooth as silk. 3D graphics were better than I expected. Cut scene movies were nice as well. Really looking foreward to working on this new platform. Touchscreen worked flawlessly and opens up oogles of options for future game designs. (Just think of RPG inventories and stat sheets to manipulate by stylus) Control was like that of a PC FPS. Foreward/Back/Strafe was with control pad, aiming/turning/jumping with stylus. Firing with Trigger button. Also I see the Black and White spell system being used. (IE drawing out spell runes with stylus to fire spells. Enjoy.


RPG inventories? You can do those already. Fsck that - you underestimate the potential of the DS - the fact is that its the first handheld with a really good _pointing device_. Now, consider all the PC genres that couldn't come to handheld because of the failure of pointing devices - RTS games, 4X strats, FPS games, etc.

Unfortunately, the Nintendo people are far out of their league here - most of the starting lineup (except for Metroid demo) I take as evidence that they don't grasp this concept. I expect the DS to be another Virtual Boy, as they said on PA - the games will be GBA, N64, and GC games ported over to handheld with stupid gimmicks tacked on to use the touchscreen.

Get all the PC classics on there and I'll sit up and take notice. Lets see X-Com and StarCraft for the damn thing.
-- Single player is masturbation.
TechnoHydra
TechnoHydra
Umm where the crap did I try and list ALL the posibilities for its future??? I didn't! So how can you say that I'm underestimating the posiblities? I was simply giving two very simple examples of what it could do hoping that others would let their imaginations run free from there. IF you had read my post you would have seen that I was expounding on the posibilities of the stylus/touchscreen by comparing it to the usefulness of the mouse on a PC.
darookie
darookie
Quote:
Original post by nagromo
Quote:
Original post by darookie
*blah*

We don't have access to the ARM7? Is it used by the system or just turned off to save battery?

The ARM7 is responsible for sound and WiFi when in DS-mode. Since the WiFi part is somewhat security relevant, Big N decided to prevent hackers from messing around with it.
Quote:

Also, the GBA had an ARM7TDMI; if the STDI still supports the same ROMs unaltered what's the difference between the two?

I *guess* it's still an ARM7TDMI so the difference only applies in its use in DS-mode. Just like you cannot access the Z80 of the GBA directly when programming GBA games, you are locked out of the ARM7 (I use that name for short).
Quote:

I haven't seen anything about including a Z80, so we probably won't have GB/GBC games on it. I'll have to get a GB emulator for my PDA if I sell my SP and get one of these.

AFAIK the DS will not play GB and GBC games. Changes are, though that there might be an emulator on the DS relatively short after the release; the ARM9 is a powerful beast that can easily cope with emulating a Z80 (hardware registers could simply be re-mapped).

Cheers,
Pat.
CaTZ
CaTZ
Quote:
Original post by Pxtl
RPG inventories? You can do those already. Fsck that - you underestimate the potential of the DS - the fact is that its the first handheld with a really good _pointing device_. Now, consider all the PC genres that couldn't come to handheld because of the failure of pointing devices - RTS games, 4X strats, FPS games, etc.

Unfortunately, the Nintendo people are far out of their league here - most of the starting lineup (except for Metroid demo) I take as evidence that they don't grasp this concept. I expect the DS to be another Virtual Boy, as they said on PA - the games will be GBA, N64, and GC games ported over to handheld with stupid gimmicks tacked on to use the touchscreen.

Get all the PC classics on there and I'll sit up and take notice. Lets see X-Com and StarCraft for the damn thing.


So, becasue the earlier launch title can't use the DS fullest potential, it'll turn to another Virtual boy? Man, you must've a good grasp in your life (sarcasm)
"So many of our dreams at first seem impossible, then they seem improbable, and then when we summon the will, they soon become inevitable." - Christopher Reeve (1952-2004)
bakery2k1
bakery2k1
There's no such thing as an ARM7STDI - the ARM7 chip in the DS is a TDMI, the same as is in the GBA.

Does anyone know which ARM9 chip it uses?
NoahAdler
NoahAdler
It uses ARM946E-S, IIRC. I'd guess revision 1, but not certain.
-bodisiw
darookie
darookie
Quote:
Original post by bakery2k1
There's no such thing as an ARM7STDI - the ARM7 chip in the DS is a TDMI, the same as is in the GBA.

Temporal dyslexia [wink]
jackdeck
jackdeck
being an arm processor, i would use c, or arm asm... no higher!
i can't wait to get a GOOD look at what's under the hood!
nitzan
nitzan
Does anyone know if the DS DevKit comes with any high level graphics language to access the 3d hardware? I read on several new stories about the DS that Nintendo provides a 3d graphics engine.

Quote:

With the newly developed graphics engine, DS can reproduce impressive 3-D renderings that can surpass images displayed on the Nintendo® 64. Games will run at 60 frames per second, and allow details like fog effects and cel shading.


http://www.nintendo.com.au/ds/system/index.php

Nitzan

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.