Homebrew [Custom Launcher] Spider3DSTools released

  • Thread starter Thread starter Lord Prime
  • Start date Start date
  • Views Views 156,559
  • Replies Replies 748
  • Likes Likes 17
Does anyone have info on Pokemon X/Y/OR/AS's memory layout, or know where to find it? I'm making and releasing (!) a Pokemon box editor app.

In my Pokémon Alpha Saphir ram dump, the item data starts @ 0x1796AC54,
the box data starts @ 0x1799A3E4, (0xE8 * 30 * 31) = 0x34AD0 byte

The memory is almost the same as the savegame, but there are some differences, and i guess the address changes after a restart, so you have to "search" for the box data.

Well, not sure what to do. My "rom" array, when really big, just simply crashes the browser when trying to create.

Code:
int rom[393232];

This line is the issue. Any ideas? I'm using IFile_Read to buf, and then to that rom array.
Read it in chunks of 2048 byte and not the whole file at once.
 
In my Pokémon Alpha Saphir ram dump, the item data starts @ 0x1796AC54,
the box data starts @ 0x1799A3E4, (0xE8 * 30 * 31) = 0x34AD0 byte

The memory is almost the same as the savegame, but there are some differences, and i guess the address changes after a restart, so you have to "search" for the box data.
This is incredibly helpful. Now all I need is a n00b's guide to getting the YAGARTO toolchain installed.
Time to learn some 3DS assembly!

EDIT:
If you want to do stuff with OR/AS and X/Y's boxes, http://pastebin.com/mHB0XPfL has a reliable method for locating the box offset in memory.
Oh shit. There's 95% of the work done for me!
 
Progress is being made! Right now, I have the file loading off the sd card, but it ends up crashing(the rom does). Hmm. Something, at least.
 
Well, when I load Super Mario 1 into Super mario 1, it loads. But, when I load mario 3 into mario 1, it freezes on Mario 1's "load" blue screen(as in, the background.) Makes me wonder if I'm injecting too late...
 
Progress is being made! Right now, I have the file loading off the sd card, but it ends up crashing(the rom does). Hmm. Something, at least.

Did you try the chunk loading like Falo said? Also, if I can get Yifan to explain the offsets I need to change, I'd definitely love to beta test and help out a bit. I didn't think my idea would take off like that.
 
Did you try the chunk loading like Falo said? Also, if I can get Yifan to explain the offsets I need to change, I'd definitely love to beta test and help out a bit. I didn't think my idea would take off like that.


Well, I'm just reading into the buf at the right address(removed the rom array). I need to figure out exactly where to load my rom.

Also, I'm curious whether it's the file size or not... Wait! Gb roms are usually standard sizes! :D

(My acting is BAD!)

Edit: Also, the main reason the idea took off is... Well, I'm a retro fan. What else can I say? I LOVE old games! Pokemon blue on 3DS? YEAH! Missingno. on 3DS anyone? XD
 
Well, I'm just reading into the buf at the right address(removed the rom array). I need to figure out exactly where to load my rom.

Also, I'm curious whether it's the file size or not... Wait! Gb roms are usually standard sizes! :D

(My acting is BAD!)

I'm unsure exactly as to why it would be the size of the ROM, as my Super Mario Bros. ROM is only 41 KB., and the RAM should able to collect that hundreds of thousands times over. I may be missing something, though.
 
I'm unsure exactly as to why it would be the size of the ROM, as my Super Mario Bros. ROM is only 41 KB., and the RAM should able to collect that hundreds of thousands times over. I may be missing something, though.


Well, the main reason I can think of is, in loading the ROM into RAM, I'm overwriting other memory values. Maybe damaging other parts of the vc. Not sure how it loads though. Could be completely wrong.
 
Well, the main reason I can think of is, in loading the ROM into RAM, I'm overwriting other memory values. Maybe damaging other parts of the vc. Not sure how it loads though. Could be completely wrong.


Have you made sure the other ROM you're trying to load isn't larger than the Super Mario Bros 1 ROM? The buffer storing the ROM in memory might only be sized just big enough for it.
 
Have you made sure the other ROM you're trying to load isn't larger than the Super Mario Bros 1 ROM? The buffer storing the ROM in memory might only be sized just big enough for it.


That's why I'm testing gb. The GameBoy roms are all powers of 2(I thing) making it easy to do.

Right now, I'm trying to inject... POCKET MONSTERS RED :D!! into Mario Land 2(same size)
 
Hmm. Problem here. Even though I wrote to the memory, the rom still seems the same(according to a ram dump). I would say it gets rewritten, but how does that explain the rom crashing?
 
and have you try to replace the rom on the ram BEFORE the launch by spamming home button after select the VC on home menu?
 
Please note this is only for developers and 3DS researchers and there is nothing here for the end user. This is NOT a CFW or any kind of ROM loader.

I'm kinda getting sick about any interesting things coming to the scene is "only for developers & research purpose".

If the scene gotta take shape it needs a public exploit for everyone (and not only homebrews through a limited exploit that uses a game), we need a fucking 9.4 CFW that'd allow anyone to install .cia files easily and don't tell me it's not possible, Gateway can do it.

At this rate, people won't get anything concrete before Nintendo releases it's new handled, I thought the 3DS scene could be as strong as the DS or PSP scene but for now we only have a few homebrews, no easy and not perennial methods to provide homebrews to the mass...
 
  • Like
Reactions: SLiV3R
I'm kinda getting sick about any interesting things coming to the scene is "only for developers & research purpose", if the scene gotta take shape it needs a public exploit for everyone (and not only homebrews through a limited exploit that uses a game), we need a fucking 9.4 CFW that'd allow anyone to install .cia files easily and don't tell me it's not possible, Gateway can do it....

Well this is the kind of thing that would be needed in order to create a CFW.
 
  • Like
Reactions: Idaho
Well this is the kind of thing that would be needed in order to create a CFW.

Yes, it's still a big step ahead of smealum's work which is locked on user mode on intent. But it's still not concrete enough to provide something easy to use for the mass, I'm glad Yifan is working on the 3DS but I hope him or someone else will work on a CFW, I'm getting tired people avoiding this because of legal issues and stuff, we know it's possible, if had any skill that'd help achieving a CFW for the 3DS I'd already have done it, sadly I'm only a techie and I can't code anything complex nor doing any RE work...
 
Yes, it's still a big step ahead of smealum's work which is locked on user mode on intent. But it's still not concrete enough to provide something easy to use for the mass, I'm glad Yifan is working on the 3DS but I hope him or someone else will work on a CFW, I'm getting tired people avoiding this because of legal issues and stuff, we know it's possible, if had any skill that'd help achieving a CFW for the 3DS I'd already have done it, sadly I'm only a techie and I can't code anything complex nor doing any RE work...


Learning is a magical thing.
 

Site & Scene News

Popular threads in this forum