SuperFW: a custom firmware for Supercard

  • Thread starter Thread starter davidgf
  • Start date Start date
  • Views Views 166,158
  • Replies Replies 858
  • Likes Likes 46
Hi everyone. First post ever on the forum. First of all, huge "thank you" to @davidgf for his work. I have been using Supercards for years, and with the new SuperFW they have had new life brought into them.

Wanted to ask the community if anyone has managed to get WonderSwan emulation to work on the SuperFW.
Hi everyone. I managed to figure it out, and the Supercard does actually play WonderSwan and you can emulate WonderSwan using the SuperFW. First of all I need to start by thanking davidgf, FluBBa, metroid-maniac and all other devs for their efforts and work which brings all of us so much nostalgic joy.
Here is how I managed (with the help of Google and Claude AI) to make it work, copied from the Claude prompts:

What to download:


  1. From https://github.com/metroid-maniac/SCFW/releases, find the 0.5.2-WSwan-B release and download scfw-0.5.2-WSwan-B-2024-11-05v0003.zip
  2. From https://github.com/FluBBaOfWard/SwanGBA/releases, download the latest SwanGBA (must be 0.6.6 or newer) - [I got SwanGBA 0.7.6, the latest as of today - as a SwanGBA.gba file]
  3. Extract the zip [scfw-0.5.2-WSwan-B-2024-11-05v0003.zip] — you'll get a "scfw" folder
  4. Copy the entire scfw folder to the root of your SD card [microSD]
  5. Rename your SwanGBA.gba file to bwsc.gba
  6. Place bwsc.gba inside the scfw folder [which is on the root of the microSD]
  7. Put your .ws / .wsc ROM files anywhere on the SD card [I created a "WS" folder in the root]
  8. Boot into SuperFW as normal
  9. Navigate to scfw/kernel.gba and launch it like any GBA ROM
  10. SCFW's text menu will appear — browse to your .ws ROM and press A
It even emulates the sound, but keep in mind that it is off by default in the SwanGBA emulator. L+R will open the menu where you can play around with the settings.
Yes, there is some slowdown for some games, but I find it incredible that the GBA can play Master System, Game Gear, Watara, Neo Geo Pocket, PC Engine and WonderSwan games, even if not perfectly.
Enjoy!
 
  • Like
Reactions: zfreeman
Hello there!

This is a beta release, almost ready for the final 1.0 release. Please report any bugs here so I can fix them. Provide ample detail (photos and vids appreciated!).

The website / documentation is at https://superfw.davidgf.net/
The open source project and releases are here: https://github.com/davidgfnet/superfw/releases/

The current version is 0.20. Feature work is mostly complete, working on fixing bugs, testing, and some UI/translation work. This firmware support SD (and miniSD/microSD) carts as well as Lite carts (but does not support supercard Rumble!).

Features:
- Rich nice UI
- Support for non-latin characters (ext latin, greek, cyrilic, japanese/chinese, korean)
- FAT16/32 and exFat support (recommended for non-ascii filenames)
- Auto patching (WaitCNT, save, RTC, in-game-menu/addon) most games
- Patch engine for unknown games (automatic, yet slow, patching for all).
- Support for save management
- Direct saving (for flash/eeprom games), no more save on reboot!
- Support 128KB flash (using direct saving, SRAM and/or ingame menu)
- In-game menu (supports reset, saving, RTC, etc).
- Cheats (using the In-game menu)
- Saving backups (saves #N last savegames)
- Flashing updates (GBA and NDS)
- Support for NDS mode, works well with TWL++ and ndsbootstrap to play NDS games.
- Minimal file management (ie. delete files)
- Multilanguage support (EN/ES/CA/IT/DE/FR/UK/RU/ZH/PT/CZ/KO)
- Release 1.0 on github!

Installing instructions:

Refer to the official docs: https://superfw.davidgf.net/docs/install/flash/

Note: please backup your firmware (ie. the original fw) before flashing stuff, otherwise you won't be able to go back!

View attachment 477014View attachment 477015
View attachment 477016View attachment 477017


Hey there!
So yeah, after seeing that this was pretty much possible (thanks to metroidmaniac's effort) and since this was something that I always wanted but nobody came up with, I decided to give it a shot and try it myself. I've been working on this over the past 2-3 weeks and so far it looks half-decent.

The goal is to create a firmware that is nice, easy to use, has some sane defaults and requires no PC (patches included in the FW). Ideally would be fast, have many features, and be easy to update and mess around. And open source of course! (Will be releasing the code soon!) Other cool things are: using Elm's FatFS lib (so support for FAT32 and extFAT is possible), proper font rendering and unicode support (no more ascii-only filenames!), no limits on file count/directory count, can load GB/GBC roms using goombacolor, etc. Let's make this very 2024.
So far this is a pretty much early demo. Supports many commercial games (haven't done almost any testing) with patches for WAITCNT (aka whitescreen) and EEPROM. Working on getting patches for FLASH next. Has no support for flashing, so you need chainload it from another supercard firmware.

WARNING! ACHTUNG! This is pretty much a demo, almost guaranteed to destroy your sav files, if not your SD card! Please stay away if you want something usable.
I'm posting this since I'm gonna be out for a month on vacation so I wanted to say hi and force myself to pick it up and finish it once I'm back.

The obligatory video:


That's it, below here a long explanation for those interested in the details:

I have worked a bit of gpsp over the past years, so I added some minimal supercard emulation on a branch, so I could develop this without having to test on real hardware (it's so much faster to develop this way). That's how the video was recorded. The support is very minimal, and unlikely to publish it, but I thought about adding some support to mgba, since the developers seem open to the idea.
Another cool topic is patching: I've developed some cool emulation/static-analysis based system that can find patching offsets for WAITCNT. I will be writing a post about this soon, since it is a cool idea and can be repurposed for other things. ATM it only works for the Thumb instruction set, working on adding ARM support. The firmware ships a database of patches (~80KB) and uses it to patch games. It also has support to load patches from the SDcard so updates and alternative patch databases can be distributed (without having to flash a new firmware).

And I'm going to bed, I'll post more tomorrow :)

1778755601916.png

What happened here? Wasn't it my fault? But you never get the apologies you deserve, let's just fix it and act like nothing happened... How funny when some people are overcome by arrogance and then aren't even capable of admitting their mistakes.
 
Anyone have graphical glitching issues with Advance Wars? Specifically the black line horizontal intro to each mission? Seeing it using a SuperChis Prime on a SP and Gamecube GBA Player. Edit: it only happens when trying to play from NOR flash. Using the latest 0.20 fw. Double edit: This also exhibits the same behavior on the japanese version (along with the version included on the Gameboy Wars 1+2 double japanese GBA pack).

Added video:
 
Last edited by epistaxis,
Last edited by sam2895,
Hi, I was glad to discover this firmware is new and in development, congratulations to davidgf for the excellent work.
I'm using a SupercardSD and I'm experiencing a weird issue playing Pokemon Emerald. In the game there are five variant of NPC that can appear in the Mauville City Pokemon Center. Which one appears depends on an ID created at the beginning with the savefile, so he will be the same for each game. After moving the savefile into the Supercard, I noticed that the NPC variant changed a couple of times. I have direct save enabled, I tried disabling it to check the firmware options. Any idea of what is happening?
 

Site & Scene News

Popular threads in this forum