The DS memory expansion pak was officially only ever used with the DS browser. When I bought it in 2007 I went for the DS Lite version so it would not stick out. And I'll admit using the hacked version on my orginal DS to use the SuperCard's memory so I could use the browser on both of them. The only real time I actually used the browser was on a business trip to Germany and I brought both my DS'ses with me. Luckily at that time T-Mobile allowed free access to their hotspots for Nintendo DS and the hotel I was in had T-Mobile hotspots. That allowed me to use BeUP for instant messaging on one DS and a browser on the other at the same time. There is a good change that was my only true useful time that I used the DS browser actually, hahaha
Because I have been experimenting with using the memory expansion pak on the DS for my homebrew game (see my recent blog post) and thought it might be smart to get a few spares. Looking at what my favorite retro game store had to offer I saw two DS Lite browsers with expansion packs but one of them had a lower price because it did not have the box and manual. Since I am only interested in the memory pak anyway. who cares right? While I was there I also got an extra DS Lite and DSi for really cheap, and some games I did not have yet.
Today the package arrived and to my pleasant surprise that "unboxed" browser was actually the fully boxed including the manual original DS version!! This one has the memory expansion pak in the form of a GBA cartridge. I have been looking around to find one but could not find it anywhere for a decent price. So while the product listing of the shop was actually wrong and I did not get exactly what I ordered....it IS what I wanted actually! Guess it was my lucky day then right?
(and I also got a Genuine Zelda: Link to the past cartridge now )
While the expansion pak is originally meant for use with the DS browser it is actually just a GBA sized cartridge with RAM instead of ROM inside. The DS Lite version obviously does not fit in a GBA but the one I got now by accident fit's perfectly! Without a ROM or flash inside it can't boot ofcourse but what if a GBA Multi-Boot program is uploaded over a link cable....and that unlocks the memory to make it writable...would it work??? This would give a lot of options for homebrew development that I first only saw possible with the SuperCard's SRAM!
If the above is not crazy enough for you....I can make it even weirder in a way that I think will actually work great for homebrew development on the GBA! Let's assume the Memory Pak is actually usable on the GBA when a multi-boot program unlocks it. I see no reason why it would not but who knows what Nintendo did with it. After booting and unlocking the Memory Pak the "bootloader" should wait for more data and store that into the RAM of the memory pak and after that maybe even jump to a program that's been loaded into RAM now. Because of the way the Memory Pak works it's impossible to load commercial games into RAM (without a LOT of patches) since it's mapped into a higher memory address.
Uploading to the GBA could be done either from the Wii using a GBA Link Cable or a Raspberry pi and a cut up multiplayer cable. The idea is to upload a small bootloader to the GBA that waits for more data to come in and unlocks the RAM for usage. And maybe run a RAM test to make sure it's in working order. After the bootload has loaded the data it might even be possible to jump into a new program that is now loaded in Expansion RAM. I am not sure if multi-boot programs lock the CPU or BIOS into requiring the MB program to stay in EWRAM. If that's the case the bootloader needs to be as small as possible...but let's try if it works first
And if all of that turns out to be possible....another small program that runs on the Raspberry Pi or the wii could be listening from uploads coming in from the PC. I have got really addicted to using wiiload and 3dsload while working on my homebrew game on those platforms. It would be awesome to have something similar for the GBA and simply run a tool "gbalink" that uploads a new version to test! It would require a special build that can run in the weird memory address. Or the multi-boot "bootloader" is extended to also be the homebrew game and just use the 8MB of ram for data storage. The only problem I see is that the link cable uploads are REALLY slow and for my game I need lots of megabytes of data to load. And every time the GBA tuns off all of that would be lost!
You need to be logged in to comment