my bootleg gameboy cart lives!! sorta! i can flash a game on it and play it but only on the occasions when the rp2040 actually starts up... which seems to happen only randomly, like one out of twenty tries. but that is a problem for tomorrow allison; tonight allison is overjoyed that it works at all!
Conversation
Notices
-
allison (aparrish@friend.camp)'s status on Tuesday, 30-Apr-2024 08:53:17 JST allison -
allison (aparrish@friend.camp)'s status on Tuesday, 30-Apr-2024 08:53:02 JST allison getting close to v0.2 of this cart! changes include: open drain-compatible level shifter (should hopefully help w/a bunch of subtle bus contention problems); smaller footprint qspi flash; shorter battery clip and inset usb port (so it'll fit inside an unmodified cart shell, hopefully); and i added one more address line to both the parallel flash and sram (8MB flash is cheaper than 4MB, and 256KB sram is about the same price as 128KB... would be fairly easy to make this a multicart?!)
-
allison (aparrish@friend.camp)'s status on Tuesday, 30-Apr-2024 08:53:03 JST allison (the distinguishing feature of this flash cart design btw is that it doesn't use any parts recycled from original carts, and it uses the rp2040 instead of a CPLD to mimic the memory bank controller)
minute repeated this. -
allison (aparrish@friend.camp)'s status on Tuesday, 30-Apr-2024 08:53:04 JST allison i just started playing pokémon yellow on my own game boy flash cart that i designed and assembled, which feels pretty good! i still have a ton more stuff to test and work on though (e.g., is the power draw for this whole setup reasonable; is the cart actually resistant to SRAM scrambling at power-down; are there MBC1/MBC5 compatibility issues I need to address etc)
-
allison (aparrish@friend.camp)'s status on Tuesday, 30-Apr-2024 08:53:05 JST allison okay it turns out the problem wasn't with power at all—I just needed to get the rp2040 to wait a bit longer for the crystal to start oscillating (see e.g. https://forums.raspberrypi.com/search.php?keywords=PICO_XOSC_STARTUP_DELAY_MULTIPLIER) with that fix, it starts up without fail every time, and my SRAM even holds a save! only remaining functional issue is that I can only flash 1MB of my 2MB chip. I suspect this is a software problem on my part (though I only ever used a 512KB chip on my breadboard proto, so even 1MB working is a win)
-
allison (aparrish@friend.camp)'s status on Tuesday, 30-Apr-2024 08:53:06 JST allison if anyone has ideas about the inconsistent power, i'd love advice! the schematic for the voltage regulator section is attached. the lm66200 is there so i'm never accidentally powering from both gameboy and USB; the regulator is a regular old 3.3v linear regulator. 3.3v goes to the rp2040, which has the normal decoupling cap setup. after power up, voltages on inputs/output are normal, but the rp2040 doesn't initialize. i suspect startup current draw is an issue?
-