ไม่สามารถเล่นวิดีโอนี้
ขออภัยในความไม่สะดวก
Hacking and Flashing Game & Watch (Dual Boot)
ฝัง
- เผยแพร่เมื่อ 16 ส.ค. 2024
- In this video I'll be hacking Game & Watch (Mario Edition).
I'll be wiring debug port to USB-C port, upgrading flash chip and flashing retro-go and emulators along with original firmware (ie. dual boot).
Wiring debug port to USB-C allows for easier flashing in the future (no need to disassembly the device) and dual boot allows for original firmware to exist alongside retro-go emulators.
0:00 Intro
2:20 Wiring debug lines to USB-C port
23:34 Backup and unlock
36:15 Flash upgrade
46:42 Flashing retro-go
The following sources are used in this video:
- raspberry pi image with all the tools necessary: mega.nz/file/3... (source: facelesstech.w...)
- retro-go NewUI (artwork and coverflow UI): github.com/old...
Some of the commands mentioned/used in the video:
1. Backup/unlock/restore
./1_sanity_check.sh rpi mario
./2_backup_flash.sh rpi mario
./3_backup_internal_flash.sh rpi mario
./4_unlock_device.sh rpi mario
./5_restore.sh rpi mario
2. Patching original firmware
export OPENOCD="/opt/openocd-git/bin/openocd"
make PATCH_PARAMS="--device=mario" LARGE_FLASH=1 flash_patched
3. Building and flashing retro-go
export COVERFLOW=1
make EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 INTFLASH_BANK=2 flash
If you have G&W and want your device to be unlocked and upgraded please contact me at retrotechcorner@gmail.com
You can buy me a coffee if you like my content: buymeacoffee.c...
Please consider subscribing to my channel.
/ retrotechcorner
/ retrotechcorner
Great solder skills and clear presentation.
Thanks a lot man this is really helpful !
This seems perfect for having all classic G&W games on the go. After I saw your video yesterday I ordered the Super Mario one and will order a soldering iron kit + the flash memory. Will report in a few months how it went. If it stops booting, I am in EU, maybe I can ship it to you for resurrection and fixing it (paying for the service of course).
Its been a few months. How did it go?
The raspberry pi image is not available anymore…
Really fan of your videos! Great job! Do you also sell this solution? If yes, I have interest in that. Greetings from The Netherlands
does it find the images of the game? or do you need to have them already. Nice video btw! You made that look so easy when it's really not
No, you have to find the artwork pack (it's on the internet...)
Great video and very informative, I am glad I found this (it came up in my suggested videos).
Is there no way to flash the chip without it being in the game and watch? Doing it that way would take the flash time down from an hour to a matter of seconds.
I've subscribed :)
It is possible but you'll still need to flash "internal" memory (ie. flash that's inside the microcontroller). Also - you need to build the image every time you add/remove rom files so you still need to build it. One option here is to build it once and then "clone" but which would probably be the fastest way of doing multiple devices at once.
I have both the Mario and Zelda units. I just WISHED they would have included the little metal kickstand like the original G & W devices. Annoys the cr*p out of me the fact they are laying down all the time instead of on an angle like the older units.
The original Ball did not have the little metal kickstand. Nintendo would certainly argue they have not included it as a tribute to this first game :D
I have debian 12. I successfully made a backup, I rewired the memory to a new one (64). I managed to restore the factory firmware back to the new spi. I can't assemble and install the dual boot. looks like I need help with this...
great work
Hi. What is the temperature of your soldering iron, for the soldering of the chip? What kind of solder and flux do you use?
I have a question. Can you run the backup image of the Game and Watch on any kind of emulator? I really like the Mario clock and would like to run it on a pi and a larger screen.
I don't know but I don't think so - the application (eg. clock and the emulator) are native Cortex code so pi won't be enough to emulate it... Porting without source code is also unlikely...
Thank you for your reply. It would really haven been a cool application for the clock. I really like it but the screen is pretty small and it's sad that the clock seems to be limited to this specific part of hardware. I hope you’ll make a video if you ever find a way to emulate it.
Do u have this same set up for the zelda one like been Able to install ver usb c and
Good job !! can this be done on zelda variants too?
Yes - take a look at my other video (Zelda). Same process essentially.
@@RetroTechCorner thanks mate ! ill just gather up the courage and try this one hehe
What would be the best type of memory chip? I know not much will fit, but I'm just gaging what I can use.
You make my dreams come true
with the enamel wires and insulating issue.... back in the day when I used to repair boards, I'd use good old ladies nail polish :) . Cheap and sets hard.
Is possible to save states games ?
Nice vid. I have a few questions. Is the Zelda G&W the same internally to the Mario one (can I wire it the same way) ? Which Raspberry Pi GPIO pins have you connected to? Did you use spacer headers or solder directly & which pins ? Also the Pi image you linked, whats the username / pw ? ta.
Zelda is essentially the same (have a look at my other video on Zelda). Debug header is slightly different but the pins we are using are in the same place. I soldered the wires directly but you can use header. username for the image is pi and the password is gameandwatch
41:00 be like
"Now to remove solder mask from these pads... Carefully... Slowly..."
Power tool: BBBBBZZZZZZZZZZZZ
Nice job on the QFN package
Isn't there a command for getting the artwork, or do you have to manually put the artwork in the game folder ? Maybe I have missed it in the video ?
I have another video (more recent) where I include the command and the artwork - please have a look in the Game&Watch playlist.
I want to do this to my game and watch, so you can solder usb to the board. Thanks a lot for video, I'm new to soldering and I want to try this project, one building a modded gameboy, then I have some crazy ideas, I want one of those unhinged sp's modded, I want to do a rasp-pi boy fitted in sp and then I want to. I want to do another one with pi/ maybe that pie board and use a ds advanced gba reader, I think I saw you do it on video where you cut it and solder it to the pie. That would be sweet but my question for you is this, is that just a type of gauged copper wire that you are soldering? And what is a cheap setup for soldering if I'm new and want to do projects like I mentioned. Also an idea for you is if you look at my content, I try to make content for the beginner. Maybe you could do the same with this niche and make short ten min videos describing smaller portions of this so beginners like me can easily learn this skill set. A lot of the retro places that sell game mods are kinda uptight about soldering. You could be the bridge for the people who dont know. You are very very knowledgeable. Thanks for the video again!
Idea: you could make a Dialog menu to do the flashing so it runs the commands on the RPI3 for you... :)
can you put gameboy advance games? or only gbc and gb games?
Just got Mario game and watch. Does any do this? Will pay.
Where are you based?
@@RetroTechCorner Ontario Canada. Just outside of Toronto
I'm in Ireland so shipping would be expensive. Try discord group - there are people offering the service. Perhaps you'll find someone in Canada.
@@Orselo Did you end up finding anyone to do this around Toronto?
@@RetroTechCorner which discord is this?
Can you use other programmers via USB port, like ST-Link v2 for example, or is this works only with raspberry pi? Also can this work with the raspberry Pi pico?
Yes, absolutely. You can use it with st-link. As for raspberry Pico - not sure, I don't have one. But one thing is certain - the whole build process will take (most likely) a lot longer...
@@RetroTechCorner I have not any of these programmers available right now, so I will need to order one of these, but as I have a CH341A programmer on hands, could this be useful too for this mod?
@@arvacon The CH341A will not work. It's not capable of SWD communication or Debugging. The Raspberry Pi Pico can be used, but it's very complicated and there's no guides available or even support for it written into game-and-watch-retro-go. Your best bet, and most affordable solution is the ST-Link V2 Clone which from official channels here in Canada costs less than $7 CAD or $3 - $4 CAD from China. You can also use a DAP-Link, though while supported, it too lacks documentation. The only other debugger besides the Pi and ST-Link V2 that is documented well and one of the cheaper debuggers is a Nucleo-64 Board like the NUCLEO-F103RB which is about $11 CAD. The J-Link Edu mini is another option if you have one.
After couple of days struggling and using different images of Rasbian, and finally installing all necessary stuff on fresh oficial distro, I was able to run the dual boot with Mario & RetroGo. But after one day of playing with device, I am not able to use RetroGo. When I switch to it, I can see the logos of different retro systems, but when that intro finish and I should see the menu with games, the device turn off. Tried to reflash the RetroGo, but no luck - still the same behavior after that. Last game I played was bomberman2, if that matters.. Would anyone guess what the issue could be and how to fix? I thought that it might be some settings or game state went wrong, but after reflashing, the status should be initialized, right? Didn't use the saving and restoring saves stuff or so, as I had no progress that I would like to keep - except of the original Mario one, where I unlocked the first game and was able to start any level and select hard option, but that has nothing to do with RetroGo I guess, but I missed that during patching as well, so the Mario game is like as on new console..
maybe that external flash is damaged? maybe there is some check for it? someone posted somwhere that at the start he had corrupted memory and had to replace it, probably to ESD or overheat from hot air gun.
I flashed the 64mb modded version of zelda and the option to select game and left shows blank screen. I can't install retrogo because it says I have single bank memory (yours shows dual bank).Do you know the fix or workaround for this?
Not sure what the issue is but double check the soldering (ie. new chip) and make sure you used unofficial/modified version of openocd (with correct parameters @55:22 of the video)
@@RetroTechCorner I tried flash_patched with git version "/opt/openocd-git/bin/openocd" from rpi image and it returns Exec format error. Makefile:270: flash_patch_int Error 2. --device=zelda and interface_"rpi". Zelda is working perfectly on the new chip so I don't think it's a soldering issue but I need to get the modded openocd working for dual bank flashing.
@@chetanjiva8874 and @RetroTechCorner, Did you adjust your parameters to account for the original Zelda NOR flash of 8mb vs the Mario 1mb? you will want to double check my math but i believe you would change the the last make from
"make EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 INTFLASH_BANK=2 flash"
to this instead
"make EXTFLASH_SIZE_MB=56 EXTFLASH_OFFSET=8388608 INTFLASH_BANK=2 flash"
Hello. I read here something about needing a patched version of openocd.
I hope this is already included in the image ?
Yes, it is
Hi friend. Please try to answer me to this question at least, because it is a little important and I don't want do all this effort without reason. How can you flash the device from the USB port, when the cover will be installed on the device, and the battery already connected to the board? I mean, don't you have to cut the power, reconnect, hold the power button etc, to make flash start? How will you make this without removing the battery? Can it be flashed with the battery connected finally? Otherwise there is no reason to do this mod...
Once the device is unlocked you can flash with battery connected.
I'd like to do this, but my screen broke. I look online, and I couldn't find a replacement. Do you know where I could find one?
I think that the screen is specially made for Nintendo so it is not available for purchase.
I don't think you'll be able to get the screen. Your best bet is to try to find non-working device and use the screen.
The screens are new old stock originally used in Cameras. You'd be lucky to find out just which models have these screens. I've been looking at creating a replacement solution, but with the systems selling for $25USD $35CAD there is little point at this time.
if i look up all the numbers on the chip google show me then cars and car parts
Here's a list of supported chips with links: www.reddit.com/r/GameAndWatchMods/wiki/flash-upgrade/
I'm using this one: www.digikey.com/en/products/detail/MX25U51245GZ4I00/1092-1217-ND/9085437
@@RetroTechCorner on that order page, it has lots of check boxes, do i have to check some specific ones?
Do you have a known working copy of the Rpi image?
The default settings for openocd are wrong in ./bashrc and backing up the device works only after adjusting the version number, but then after I change the custom OCD path and run the following:
make PATCH_PARAMS="--device=mario" LARGE_FLASH=1 flash_patched
I get an error: make: *** [Makefile:270: flash_patched_int] Error 2
I am not fluent in understanding cli so any help would be appreciated :)
did you use patched version of openocd? (export OPENOCD="/opt/openocd-git/bin/openocd")
@@qqryqq123 Hi, Yes I did. I jumped on Discord and it was confirmed that the RPi image no longer works and was advised to use a Ubuntu VM.
I'll try to upload the image over the weekend.
@@RetroTechCorner I also get an openocd error when using this rpi image.
Same error as @deano30923.
Is there a solution? Please please help me!
I'm from Japan. Sorry for my poor English.
Will this also work on the Zelda model?
Yes - I've another video on Zelda. Same process essentially.
Is there no way this can be done with usb alone?
USB is just wired as a power supply,
nope, unless you wire debug port to unused usb pins..
@@RetroTechCorner I'm in love with the sound of that! Can you point me in the right direction?
@@KeikakuLounge That's what he shows in this video!
Will the link for the image be fixed?
Link updated in the video description.
Отлично! Но мне кажется новый чип можно феном посадить не расширяя дорожки.
yes, it's possible. it's just easier when there's more space on the pads.
👀
Anyone in Belgium/France Holland or Germany who had done this and can mod mine aswel (I pay you for your work obviously)
Join g&w discord - there's a marketplace there where people offer these services... I'm not sure if they flash actual ROMs as it can be... problematic due to copyrights etc..
Bro I can't do it I am only 12 😢 can you do it with only usb
The USB-C port doesn't have data pins connected so it's only for power (I'm 12 asw lol)
if you have money, there are some great modders who will do it for you
I'm 12 as well and I have no idea what to do