Homebrew Talking to gba cart

  • Thread starter Thread starter gudenau
  • Start date Start date
  • Views Views 1,098
  • Replies Replies 3
If you want to read the actual game cartridge, it's easy.
The GBA cartridge is memory-mapped to 0x08000000 when in NDS mode. You can read directly from it. For example, here's a code to read the gamecode, so you can know which game is inserted. (I haven't tested it but it should work)

Code:
u32 gamecode = *((vu32*)0x080000AC);
if(gamecode == 0x12345678) {...}

This code reads 4 bytes from address 0x080000AC, which is offset 0xAC in the cartridge, which according to GBATEK, has the gamecode.

If you want to read the saved game, I dunno if it's possible. I think I read somewhere it wasn't because the DS clock speed was too fast to talk to the EEPROM or whatever.
 
  • Like
Reactions: 1 person
Yeah, but Pokemon DS Can read the GBA Pokemon game so you *can* read the save-game.

Also Dirbaio, wouldn't you have to give the ARM9 rights to the card bus?
Because you need to do that when reading a DS games eeprom, but then your trying to read something different...
 
Yeah, good point.
http://nocash.emubase.de/gbatek.htm#dsmemorycontrolcartridgesandmainram

In libnds, it would be

Code:
sysSetCartOwner(true);
 

Site & Scene News

Popular threads in this forum