r/WonderSwan • • Apr 02 '26

Flashmasta Youth Edition 8 in 1 Cart and Dumper from AliExpress

44 Upvotes

I ordered the AliExpress Wonderswan Flash Masta Youth Edition 8 in 1 cart and dumper.  It came with no instructions and the seller only sent me a Google Drive link which I could not download because Google said it was infected with a virus.  I came to Reddit and with the help of the community (big shoutout to GothamAnswer who helped so much, I would not have gotten far at all without that help) I was able to get the dumper working and successfully put 7 games and a menu on the cart.  

I could not get the many different versions of Tengu or the MultiDumper that I saw suggested in several threads to work. I was given the Chinese WSC program which does work.  I have had mixed results with different Windows operating systems.  I have been able to get the dumper to work on Windows 11.  I also got it to work on Win 8.1 during troubleshooting.  The default driver that auto installs with 10 and 11 should be fine.  It’s possible that you may need to install the driver if it’s not recognized.  If so, you’ll need to install the STM32 driver for the dumper. 

I have packed up the following files in a Dropbox share that hopefully stays up but this Chinese exe seems doomed to be flagged as a virus.  I did run multiple virus scans with different scanners and it did not get flagged.  I did not see any strange activity when I ran it in an isolated sandbox environment.  However, use at your own risk because I am not going to vouch for how safe this is. 

Contents:

WSC+(Chinese_characters).exe – The dumper software

WSC Translated.png – The map that shows English text for the software

Flashmenu512K.ws– The menu rom file to be put in slot 1 of the multi cart

STM32_vcp_driver – The STM32 Driver Folder if needed

Windows 11 Device Manager.jpg – A screenshot of the working dumper driver from device manager in Win 11

Windows 8.1 and below Device Manager.png – Same as above but from Win 8.1

Link - https://www.dropbox.com/scl/fo/6h6y15glxx3kt3sy2btd2/AKBpw58QdKHDPseApOKV1lA?rlkey=fzxq07y0xz6tti9jt3zsnwxyl&st=ae77z14w&dl=0

Above link banned for malware, i rar'd the program and uploaded to MEGA. Below is new link. Get it while it's hot because it doesn't last long.

 https://mega.nz/folder/VQt00YSQ#JpqDrj_W003BAZCJUid2EQ

Steps to load roms to cart

1.     Connect dumper to PC via USB

2.     Open the WSC Software

3.     Click Flash button

4.     The PC COM ports should populate in the drop down box next to the flash button, Choose the correct port for your dumper, you can check device manager to see which COM port it’s using

5.     Click Connect button

6.     Choose the cartridge slot you want to dump the rom to in the cartridge slot drop down menu

7.     Click Switch button

8.     If you click cartridge detection, it will display the current slot’s contents

9.     To load rom into the slot, click the Burn Game button

10.  Browse to the .ws rom file and click OK

11.  You should see the rom transferring to the cart.  This will take a while as it’s kind of slow.

Deleting Game

1.     If you want to load a game in an occupied slot, you have to delete the slot contents first.

2.     Do above steps 1-7

3.     Change the Game Capacity and Save Capacity drop down boxes to the largest size

4.     Click Erase Slot by Capacity

5.     If you do not change the Game and/or Save Capacity, it will not delete the entire contents and you will get an error when loading a new game. 

6.     Proceed with above steps 9-11.

 

I really hope this helps some other people who purchased this cart/dumper and were as disappointed as I was upon arrival.  Again, huge shout out to GothamAnswer for several hours of help on this. 


r/WonderSwan • • Jun 12 '21

Join the Retro Gaming Network Discord Server and talk about Bandai WonderSwan!

Thumbnail
discord.gg
5 Upvotes

r/WonderSwan • • 5h ago

RevivalGate - WonderSwan WonderGate Revival Project

26 Upvotes

In 2001 Bandai sold the MobileWonderGate, an adapter accessory for the WonderSwan that connected to a DoCoMo phone so games could post scores, download national rankings, and unlock extras. Bandai shut the service down in 2003, and those features have been unreachable (for the most part) ever since.

RevivalGate is my replacement: new servers for all WonderGate supported WonderSwan games. It's live now for emulators and I hope to eventually support real hardware as well.

What works

27 of the 30 WonderGate games I've tested connect and do something useful. A few highlights:

  • Raku Jongg, GunPey EX, Tare Panda no GunPey, Final Lap 2000, Pocket Fighter, Uchuu Senkan Yamato, and others: Score uploads and national rankings, viewable on the site as well as in the game.
  • Digimon Adventure 02: D1 Tamers and Digimon Tamers: Brave Tamer: The net Grand Prix, ranking battles, and the ladder (Brave Tamer's hall of fame too)
  • Mobile Suit Gundam Vol. 1–3: Game unlocks (the Hammer and Javelin, side stories, and sub-scenarios)
  • SD Gundam G Generation: Gather Beat 1 and 2: The net shop, using the item list and prices players recorded in 2002 (thank you internet)
  • Wonder Classic, Dark Eyes: Battle Gate, Wizardry Scenario 1, Star Hearts, Buffers Evolution, Rainbow Islands, Doraemon, Ring Infinity, Terrors 2, and the MobileWonderGate cart itself (web pages and mail between players)

The full list, with what works per game, is here: https://swanrevival.com/revival-gate/

I have also began translating all of them and have about half done so far. Rest should be done in the next day or so.

How to play

The easiest way is my forked build of MesenCE with the WonderGate adapter built in (Windows, macOS, and Linux). Download it, load a WonderGate game, and open its online menu. There's nothing to configure, other than a completely optional user account which allows you to link your scores from the game.

Other emulators, like Mednafen, can work too. You just have to download the Swan Revival Link app that stands in for the adapter.

How it works

The console never talked to the modem directly. It sent the adapter short commands over the EXT port (open a socket, connect, send, receive, look up a hostname) and the adapter did the networking. So anything that answers those commands can stand in for the adapter and phone. The emulator build (and upcoming adapter) points every old Bandai hostname at our server, which means no ROM or cartridge patching is required. Your games stay exactly as they are.

Nobody recorded the original network traffic that I know of, so each game's server was worked out from the game's own code and tested against the real game running in an emulator.

Real consoles

I'm designing a small USB-C module for the EXT port that replaces the adapter, powered by the console, with your phone carrying the connection. It's still being prototyped, but I'm getting relatively close to finishing it. You can read about it here: https://swanrevival.com/hardware/revival-gate-module/

FAQ

Do I need to patch my ROM or cartridge? No. The games run unmodified. All the work happens in the adapter (emulated, for now) and on the server. I do have most of the games already translated to English though, but that's just a personal preference.

Do I need an account? No. Scores post under the name you enter in the game. If you want them tied to a handle on the site, sign in with Discord or Google and link your emulator with a one-time code. There's no cost and I'm not farming any data here. It's just for fun.

Does it work on a real WonderSwan? Maybe. The USB-C module I'm designing will be the way to do it and I will test it more then. Before then, it should be possible with an ExtFriend-compatible cable and Swan Revival Link on a computer, but that's not actually been tested yet. If you have a cable and want to try, I'd love to hear how it goes.

What about RetroArch, Android, or other emulators? Not yet. Stock MesenCE and ares model the serial port but don't connect it to anything, which is why I added the adapter to MesenCE. The same adapter code could go into a RetroArch core, which would also cover Android. It's something I'll probably eventually look into, but I've just been slammed with the rest of this.

Can you bring back the downloadable content? Only some. Anything the game already contains (rankings, unlocks, shops with item lists I could reconstruct) can come back. Content that only lived on Bandai's servers, like the original downloadable items and maps, is gone unless someone saved it. Where a game needed something from the server, I've filled the gap as faithfully as possible (Gather Beat 1's shop, for example, uses Bandai's final published item list at prices I tried to estimate). If you have old captures, saves made after a download, or magazine scans of WonderGate content, please get in touch.

Which games don't work yet? Basically all of them. The real problem is that a couple of the games really have no data currently, since it was lost when the servers shutdown. I have some ideas for replacements though and they'll be launched shortly. Some games also have features that I'm still trying to fully flesh out, but they are at least partially supported currently.

What happens if Swan Revival goes away? You're not tied to my site. MesenCE's WonderGate settings tab and Swan Revival Link will both accept a different server address.

What does it send from my computer? Only what the game itself sends (its player name, scores, and requests), plus your link token if you linked an account.

Is it free? Yes. There's nothing to pay for. The hardware will cost something when/if it releases, but the service and the emulator are free.

AHA! You're just trying to make money! Yeah right. I'll be lucky to even get close to breaking even, and that's assuming I actually manage to get a working version of some of the hardware. This is just for the love of the game, folks. Love me some WonderSwan.

Do you provide ROMs? Absolutely not. You'll need to dump your own cartridge.

I found a bug or a game behaves oddly. I would almost guarantee you did at this point. Please report it, with the game, what you did, and what it showed. Testing on Windows and Linux is especially welcome. I've done most of my testing on macOS so far. I'm sure I'll wake up to all kinds of reports potentially.

Thanks to trap15 for wonderfence, Keitai Archive for WonderGateway, and the WSdev wiki for its WonderGate protocol notes. This project builds on all three.


r/WonderSwan • • 2h ago

[How it's made] How an AI translated and ROM-hacked a WonderSwan Color game, step by step: Blue Wing Blitz (long, technical)

0 Upvotes

A few days ago I posted an English patch for Blue Wing Blitz, Square's 2001 air-combat strategy game for the WonderSwan Color. Several people asked how it was made, so this is the long version. I've tried to write it so that a programmer who has never touched a ROM hack can follow the whole process and reuse the ideas on another game.

Please read first: the translation and all the hacking were done entirely with AI (Claude), as a personal project. I directed the work, played the builds and reported what was wrong; Claude did the reverse engineering, the code and the English. I share the patches for personal use, but they must never be uploaded to romhacking sites: they aren't up to the standard of a real fan translation. This post is about the method, not a claim that AI replaces human translators and hackers.

Contents

  1. The machine in five minutes
  2. The workbench
  3. Finding the font, then the text
  4. How the game prints a line
  5. Translating with context
  6. A new font
  7. Making longer English fit: jump stubs
  8. The page engine: wrapping, new windows and the tile ring
  9. Tables the game copies around
  10. Compressed graphics
  11. Testing
  12. The double AI review
  13. Lessons for programmers

1. The machine in five minutes

  • CPU: NEC V30MZ, a fast 80186-compatible 16-bit x86 at about 3 MHz. The usual x86 segment:offset addressing applies: physical address = segment × 16 + offset, 20 bits, so 1 MB of address space.
  • Screen: 224 × 144. The video hardware works with 8×8 tiles, 2 bits per pixel (4 colours per palette) in the mode this game uses.
  • Memory map (simplified):
    • segment 0000: internal RAM (work RAM, tile data, tile maps, palettes);
    • 1000: cartridge SRAM (saves);
    • 2000 and 3000: two 64 KB windows onto any ROM bank, chosen with I/O ports 0xC2 and 0xC3;
    • 4000–FFFF: "linear" ROM, chosen in 1 MB blocks with port 0xC0.
  • This game's layout: the ROM is 2 MB, i.e. 32 banks of 64 KB. With the setting the game uses, segments 4000–FFFF read the upper half of the file directly. So segment 7000 = file offset 0x170000, D000 = 0x1D0000, and F000 = 0x1F0000, the last bank, which holds the main code.
    • Everything below is written as segment:offset (what the CPU sees) or as a 6-digit file offset (what you patch).
  • Header: the last 16 bytes of the ROM hold the header. The last two bytes are a 16-bit sum of every other byte. Recompute it after patching, or emulators will complain.

2. The workbench

Everything ran in a Linux sandbox that Claude drives by itself:

  • Python for every tool: extractors, encoders, compressors, the build script.
  • MAME, run headless and scripted in Lua: press buttons on given frames, take a screenshot after every step, read or watch memory.
  • A reproducible build. python3 src/build.py starts from the untouched Japanese ROM and applies everything: font, text, code, tables and graphics.
    • Nobody ever edits the ROM by hand.
    • Every patch first asserts the original bytes it expects to find (assert rom[a:b] == ...). If a guess about the code is wrong, the build stops instead of silently corrupting the game.
  • BPS output, made by a small Python BPS encoder.

My part was to play, send screenshots of anything wrong ("this window overflows", "this name is cut", "Japanese left in this menu"), and decide on names and taste.

3. Finding the font, then the text

There was no existing table for this game, so the first job is to learn how the game encodes characters.

The font. A tile viewer over the ROM (2bpp, various widths) shows the font sheet at file offset 0x120000:

  • 16×16 glyphs, each made of four 8×8 2bpp tiles;
  • 8 glyphs per 0x200-byte row, laid out like this:

Kana and kanji.

  • The first glyphs are a space, digits, punctuation, then hiragana and katakana in the standard order, so the kana part of the table can be read off directly.
  • After them come about 380 kanji in no particular order, plus icons. Those were identified with a small template-matching OCR:
    1. Render every kanji of JIS X 0208 (about 6,300) with Noto Sans CJK.
    2. Crop each rendering and each game glyph to its ink, centre it in a square, scale it to 24×24 and blur it slightly.
    3. Turn each into a zero-mean, unit-length vector and take the best cosine match.
    4. Fix the misreads by context, once the text around each kanji is readable. Small kanji at 12 px look a lot alike: 未 vs 末, 土 vs 士.

The encoding.

    0x30-0xFF     one byte  = glyph (code - 0x30)
    0x21 xx       two bytes = glyph 0xD0 + xx
    0x22 xx       two bytes = glyph 0x1D0 + xx
    0x00-0x1F     control codes
    0x01          end of line (return to the caller)

Finding every line.

  • A scanner walks the script banks looking for byte runs that decode to plausible Japanese: valid glyph codes, lots of hiragana, ending in 0x01. It scores each candidate.
  • Candidates alone are not proof, so the scanner also cross-references them. The event script calls each line with a 3-byte instruction 04 lo hi (call hi:lo in the same segment), so a real line is one that some 04 points at.
  • That gave a dump of about 2,000 lines with their exact address, length and call sites (refs.json). The call sites matter later.

4. How the game prints a line

This is a real window from the story, as bytes in the event script (bank 0x1B):

    04 13 E2      call 1BE213   "われわれは まずロギーナ軍を"  (We must first...)
    0F 00         new row
    04 23 E2      call 1BE223   "おいださなくてはならない"     (...drive out the Roggina army)
    04 2C 6E      call 1B6E2C   wait for a key (a small routine)
    0F 01         clear the window

And the first line itself:

    6B 69 6B 69 59 30 5E 7F BB C9 77 A5 21 4E 6C 01
    わ れ わ れ は ␣  ま ず ロ ギ ー ナ 軍(2 bytes) を  end

Other control codes worth knowing:

  • 0F 06 nn moves to column nn.
  • 0F 04 waits for a key inline.
  • 07 49 lo hi 04 00 03 prints a name stored in RAM at hi:lo: the eight pilots live at 0B00, 0B10 ... 0B70 and the airship at 0BF0, because the player can rename them.
  • A "speaker header" is a small subroutine that prints the name and a full-width colon.

From this the extractor groups lines into pages. A page is what one window shows between two waits: the lines, how many rows they use, the speaker, the column, the kind of window and what ends it. Blue Wing Blitz has 1,431 pages. Translating page by page, not line by line, is what makes the English read as speech instead of as fragments.

5. Translating with context

The English script is a plain text file keyed by ROM address. One entry can cover a whole page (+1 = the page spans one more line):

    1BE213+1    First we must drive out the Roggina army.

Names are tags, {Keid}, {Payer} ... {Ship}, because the player can rename the heroes and the airship.

Rules Claude followed:

  • Source text. Translate from the Japanese in the ROM; there was no earlier English translation of this game to lean on.
  • Register. The Japanese is mostly hiragana with few kanji, written for a young audience. The English should be simple and lively but not childish. Menus, briefings and aircraft profiles use real aviation terms.
  • Names. Use official romanizations where they exist: Square's 2001 announcements as reported by RPGamer, the English Wikipedia article, and the official PlayOnline site through the Wayback Machine. The aircraft keep the Norse, Slavic and Celtic myths they are named after: Hraesvelg, Gullinbursti, Svantovit, Triglav...
  • Leftovers. Translate them too, even if almost nobody will see them: the debug sound-test strings, and 70 developer placeholder profiles ("プロフィールC / ここにプロフィールが / いろいろでます" → "Profile C / Profile text / goes here.").

6. A new font

The game was already proportional. The text engine reads a one-byte advance width per glyph from a table at 0x1DEB74. This saved a lot of work: no new renderer was needed, only new glyphs and new widths.

  • Base font: Shinonome 6x12, a public-domain bitmap font loaded from its BDF file.
  • Redrawn in the game's style into the 16×16 cells:
    • ink in colour 3;
    • a drop shadow in colour 2 one pixel right and down;
    • background in colour 1;
    • baseline aligned with the Japanese digits;
    • advance = ink width + 2 (shadow column + 1 px gap).
  • Glyph slots:
    • The Japanese no longer needs its hiragana slots, so lowercase letters and punctuation went there. The one-byte codes 0x40–0x59 are now a–z.
    • The capitals use the game's existing Latin slots.
    • Digits and the two-byte icons are kept as they are: HP, fuel, missile counts and stat bars, written in the script as {HP}, {GAS}...
  • Encoder: a small charmap.py turns English plus tags into bytes. | = new row, ^ = wait and clear, {XX} = raw control byte.

7. Making longer English fit: jump stubs

This is the central trick, and it works for many games with a bytecode script.

The problem.

  • English is longer than Japanese, usually 1.5–2× in bytes here.
  • Each line is called by a 16-bit pointer from the script, inside its own 64 KB segment.
  • The script banks are full. Moving every line would mean finding and rewriting every pointer, and some of them hide inside code.

The solution.

  • Leave every pointer where it is. If the English fits in the Japanese line's bytes, write it in place (332 lines).
  • Otherwise, overwrite the first three bytes of the Japanese line with a jump to the English, stored in free ROM somewhere else.
  • The text interpreter has no such jump, so new control codes were added. The interpreter dispatches control codes 0x00–0x1F through a table of near pointers at F000:D2EB, and several entries are unused.
    • To find that table: Lua read taps in MAME show which code reads the text bytes, and from there the interpreter loop and its jump table are a short disassembly away.
  • Claude put small handlers in free space at F000:E600 and pointed the unused entries at them:

The whole 0x13 handler is five instructions. si points at the control byte and es:di is the interpreter's context:

    mov si,[si+1]          ; new text pointer = the 2 bytes after the code
    mov ax,0x7000
    mov ds,ax              ; text now comes from segment 7000
    mov [es:di+0x83],ds    ; store it in the context, so it survives
    ret

Why this works.

  • The English ends with the same 0x01 as the Japanese. The interpreter keeps its own call stack in that context: depth at +3, 4-byte entries (offset, segment) from +0x85. So 0x01 simply returns to the script, exactly as the original line would have.
  • The script never knows anything changed. The window from section 4 now starts with 13 E7 6B, a jump to 7000:6BE7, where "First we must drive out the" is stored.

Two corner cases.

  • Lines shorter than three bytes can't hold a jump. For those, the build switches each caller from 04 lo hi to 15 lo hi, a far call into a copy in bank 0x1D. This is why the call sites were collected in section 3.
  • Wait routines. Relocated text sometimes needs to call the wait routine of its original bank. 0x02 calls a routine in the segment saved on top of the call stack, so moved text can still use the right one.

Space allocation. A simple first-fit allocator manages:

  • the free areas of each bank;
  • the "gaps": the tails of Japanese lines that became 3-byte jumps, plus space freed by moved blocks.

Pointer tables that must stay in their own segment (section 9) are fed from those gaps.

Final count: 332 lines in place, 1,586 relocated, 65 moved out through far calls, and about 69 KB of ROM still free.

8. The page engine: wrapping, new windows and the tile ring

Writing the bytes is the easy half. Making every page look right is where most of the time went.

Wrapping.

  • Text windows are 13 cells (208 px) wide and show two rows. Each page knows its kind of window, so the usable width is computed per page (for example, minus the column offset).
  • Greedy word wrap by pixel width, using the exact advance table of the new font.
  • Player names are counted at their maximum width (7 letters), because the player may rename Keid "WWWWWWW".

More rows than the Japanese.

  • The extra rows are distributed over the page's lines, with 0F 00 new rows between them.
  • When the window is full, the engine inserts a page break: the same wait routine the script uses on that page, then 0F 01 clear. Long speeches therefore continue in a new window, just as the game does by itself.

Names. The script's own name insertions inside a translated page are switched off by changing their last byte 03 into 05, a 1-byte no-op. The English carries its own insertions wherever the name falls in the English sentence.

The tile ring. This was the nastiest bug.

  • A text window doesn't draw into a fixed area. It renders glyphs into a ring of 80–96 tiles, which is about 320–384 px of text per page.
  • If a page needs more, the ring wraps and the last glyphs overwrite the first ones.
  • Japanese never came close to the limit; English did.
  • The build now simulates the renderer's tile counter for every page, including the speaker header, and adds a page break wherever the ring would overflow.

The column-jump patch. The original engine charged a column jump at the start of a row as if the skipped pixels had been drawn, wasting part of the ring on every indented row. A 4-byte patch at F000:C6DC calls a 17-byte routine that charges only x & 15.

Checks.

  • check.py reports any row wider than its window.
  • flowstat.py counts pages that don't fit; it must report 0 before a release.
  • The speaker headers' full-width colon was replaced by a plain :.

9. Tables the game copies around

Some strings aren't printed by the script. They are data:

  • default pilot names;
  • aircraft nicknames;
  • model numbers;
  • airship upgrade messages.

These are read through 16-bit pointer tables in their own segment, and some are copied one after the other into the save data by a block-copy instruction of the script. The game assumes the strings sit back to back.

  • Rebuilding them. The build writes a new block and a new pointer table in free space of the same bank, then patches the script operands that point to them.
  • The 7-glyph limit. The name-entry screen keeps at most 7 glyphs, the same field the player types into.
    • Long default names like "Discovery" use ligatures: two narrow letters drawn in one 16×16 glyph, stored in unused kanji slots (21 per table).
    • Model numbers are shortened: アリウス → "Ar.", ラムヤ → "La.", 改 → "-K".

10. Compressed graphics

Two graphics needed work:

  • the place caption of the first mission, "Tadaga, Esk Republic";
  • the katakana reading under the title logo.

Finding the caption.

  • Graphics are listed in two tables at D000:D484 and D000:E06C. Each starts with a word count, followed by (offset, segment) pairs. The segment's high byte is written to port 0xC2, so the data is read through the 2000 window.
  • The decompressor is at F000:0956. Reading it gave the format, here called "lane RLE":
  • Interleaving by lanes puts the same bitplane bytes next to each other, so runs compress better.

Redrawing it.

  • Claude wrote a decompressor and a compressor in Python and checked that decompress(compress(x)) gives x back.
  • The caption was decompressed, redrawn with the new font and recompressed: 571 bytes against the original 627, so it fits in place. Otherwise the table entry would simply be pointed at free space.

The title subtitle is just 9 sprite tiles, cleared. The last one also holds the edge of the "g" tail in the logo, so that tile is masked rather than wiped.

11. Testing

  • Scripted runs. A Lua script inside headless MAME feeds input sequences like -:300,Start:200,A:60,Right:16,... (button:frames), with one screenshot per step. The steps are then assembled into a contact sheet. A full run from boot to a story scene takes seconds.
  • Memory taps. Lua write and read taps answer "who writes this byte?", which is how the interpreter, the tile ring and the name buffers were found.
  • RAM pokes set up test situations without playing hours: an inventory, a pilot, a stage.
  • The developer menu. The ROM still contains the developers' own menu: stage select and an event checker. Test builds reach it by changing one byte in the title screen's dispatcher, so any mission or cutscene can be checked in seconds. It is never enabled in releases.
  • Savestates taken in the middle of a text box break after a rebuild, because the text moved. Replay from boot or from SRAM saves instead.

12. The double AI review

After v0.9 the whole script went through a second, independent AI. The result was v0.9.1.

The package for ChatGPT:

  • 1,500 rows (1,496 text and 4 graphics) in six CSV batches with the Japanese, the English, the speaker and the row width limits;
  • a 216-entry glossary of names and terms;
  • a long prompt. The prompt asked ChatGPT to research official sources first and write a style guide and a name sheet, then give every row a verdict: CERTAIN, UNCERTAIN, DOUBTFUL or DECIDE (a human must choose).

Claude rechecked every proposal against the Japanese and the window sizes, and I decided the open choices. Some of the fixes:

  • 最適速度 is "optimal speed", not "Cruise" (now "Opt Spd").
  • A dive maneuver boosts every ground attack, not only bombing.
  • A "might be the heroes" line had become a certainty.
  • The maneuver from the proverb 二階から目薬 ("eye drops from the second floor") became "Long Shot".
  • Two names were corrected: Rofe and Gulltoppr.

The reviewer's job is to find suspects; the translator decides with the ROM in hand. Several ChatGPT proposals were right in meaning but didn't fit 18 characters, or relied on names it couldn't verify. Its own report says so.

13. Summary

  • Font first, table second, text third. Once the glyph sheet is decoded, the encoding usually falls out, and kanji can be OCR'd against a system font.
  • Find the script interpreter's control-code table. Unused codes are free hooks: one jump code saves you from repointing thousands of lines.
  • Collect call sites, not just strings. They let you relocate short lines, group lines into pages and translate whole speeches.
  • Model the renderer's limits in the build: widths, rows, tile pools. Don't discover them by playing. If a check can say "this page overflows", playing becomes confirmation instead of search.
  • Keep the build reproducible and defensive. Start from the clean ROM every time, assert original bytes before every patch, recompute the checksum and emit a BPS.
  • Automate the emulator. Scripted input plus screenshots turns "play for an hour to see one window" into a loop of seconds.
  • Where the AI needed a human:
    • names and jokes (taste, not grammar);
    • spotting what looks wrong on a real screen;
    • deciding when "faithful" and "fits in 7 glyphs" conflict.
  • Where it was strong: patient, exhaustive work, such as 2,000 lines, 1,431 pages, every pointer, every width, and reading x86 without getting bored.

The tools: every script described above (extractor, OCR, page engine, font, table and graphics code, BPS encoder, emulator harness) is in BlueWingBlitz_tools.zip: [link]. It contains no ROM and no Japanese script. You run the extractors on your own copy of the game, and the README lists the commands from the clean ROM to an English build. It's research code written for one game, but the ideas carry over.

Sources and tools

  • Japanese text: the WonderSwan Color ROM itself.
  • Names: Square's 2001 announcements as reported by RPGamer (archive.rpgamer.com), the English Wikipedia article "Blue Wing Blitz", the official PlayOnline site (via the Wayback Machine), Weblio and Kotobank for terms and idioms.
  • Aviation terms: the FAA Airplane Flying Handbook and Wikipedia's articles on basic fighter maneuvers.
  • Fonts: Shinonome 6x12 (public domain) for the game; Noto Sans CJK only as the OCR reference.
  • Tools: MAME (headless, Lua scripting), Python, a home-made BPS encoder.

Translation and hacking: made entirely with AI (Claude) for personal use. Please don't upload it to romhacking sites. Questions about the method are very welcome in the comments!

I can post other HIMs for different games upon request.


r/WonderSwan • • 1d ago

Are the moderators asleep?

0 Upvotes

People have been making AI slop on old consoles for months at this point, and it recently started spreading in the WonderSwan community too, but it seems like the mods of this place haven't even noticed it yet. The subreddit really needs a new rule or two to regulate posts about game translations, hacks and new stuff made with AI, otherwise we'll be flooded by them.

P.S: Downvote as much as you want, you'll never change my opinion.


r/WonderSwan • • 2d ago

[Release] Cardcaptor Sakura: Sakura to Fushigi na Clow Card (WonderSwan) - Spanish (Spain), black and white + Color

Thumbnail
gallery
15 Upvotes

Cardcaptor Sakura - Sakura to Fushigi na Clow Card ("Sakura and the Mysterious Clow Cards") is Bandai's 1999 Cardcaptor Sakura game for the WonderSwan, released only in Japan. It follows the first season of the anime: Sakura Kinomoto opens a strange book in her father's study, the Clow Cards scatter all over Tomoeda, and Kero, the Beast of the Seal, makes her a Cardcaptor. Week after week you plan Sakura's days, spend Sundays with her friends and family, and capture the Clow Cards in battles where the cards themselves are your weapons.

Here is the game in Spanish from Spain, in two versions with the same text: black and white (WonderSwan and WonderSwan Color) and Color (in colour on the WonderSwan Color).

English version will be done by Hilltop Works.

Please read: this translation was made only with AI, as a personal project. I'm sharing it as it is for personal use, but it must never be uploaded to romhacking sites (romhacking.net and the like): it isn't up to the standard of a real fan translation and it doesn't belong there.

Download: HERE v0.2.1

How it was made (double AI check)

Claude translated the whole game from the Japanese.

ChatGPT reviewed all 9,042 lines against the Japanese and flagged doubtful lines and open choices.

Claude checked ChatGPT's review again line by line before applying it (some proposals were rewritten or shortened to fit the screen), and the open choices (terms and names) were decided by me, waiting for a spanish redditor to help. :D

What's translated

  • The whole script: every week's story, the Clow Card events, school, home and the Sundays around Tomoeda, the battles and the endings.
  • Menus and messages: Kero's comments in the planner, status and condition screens, the shop and its items, profiles, the diary, battle messages, card descriptions and spells.
  • Names follow the Spanish dub Sakura, cazadora de cartas: Sakura Kinomoto, Kero (Kerberos), Tomoyo Daidouji, Li Shaoran, Meiling, Touya, Yukito, Yue, Clow Reed, "cartas Clow", "¡Libérate!", "¡Vuelve a la forma que mereces, carta Clow!". No Japanese honorifics. The Clow Card names are in Spanish too (Viento, Volar, Sombra...); only the card pictures keep the English name printed on them.

Images (Japanese original on the left, Spanish Color version on the right)

Story dialogue

The Clow book

Kero

The key

Release!

Kero explains the battles

Battle

Battle messages

Sealing

Weekly planner

How to patch

Apply the BPS to the Japanese ROM "Cardcaptor Sakura - Sakura to Fushigi na Clow Card (Japan)" (2 MB, CRC32 7F3A14C0) with Floating IPS, beat or ROM Patcher JS. The result is a 4 MB ROM: black and white CRC32 E41617CA, Color CRC32 A53C9190. Keep the .ws extension.

You must provide your own copy of the original Japanese game to apply it.

Changelog

  • v0.2.1: corrections suggested by a Spanish-speaking player (thank you GT!): the Clow Card names and the stats (Conocimiento, Sentir, Aguante, Velocidad, Fatiga) are now in Spanish everywhere, also in the status panel; Sakura's "Hoe" is now "Ah" and "Hala" is "Wow"; a few lines reworded (her father "cocina muy bien", "¡Qué bien cocino!", "fresca", the card chants, the music names). The weekly planner question reworded, and the ¿ and ¡ glyphs redrawn (¿ looked mirrored, ¡ looked like an i).
  • v0.2: ChatGPT review applied after Claude's check: 73 corrections of meaning and terms (Sakura's "llave" in the key chant, Shaoran's thunder chant with the Jade Emperor and the five elements, the twirling "bastón", shop items, battle messages...), ellipses written as "...", stray Japanese-style marks fixed. Terms unified: santuario Tsukimine, Emperador del Trueno, Emperador del Viento, "Kerberos, el Elector", omurice.
  • v0.1: first version (not released publicly).

Known issues

  • Text drawn as pictures translated in English: battle commands (Card, Kero, Guard, Dodge), the card menu (Use, Info, Back), the status panel and a few banners.
  • The font has á é í ó ú ñ ü ¿ ¡ and É Á; the other accented capitals (Í Ó Ú Ñ) show without the accent.
  • Tested in an emulator on the opening chapter, the first battle and sealing, the planner and the week results, in black and white and in colour; every line was checked for length by a tool. If you find cut text, leftover Japanese or a crash, tell me where it happened.

Sources

  • The Japanese script of the game (main source) as a reference.
  • eldoblaje.com, entries for the series and the film of Sakura, cazadora de cartas, for the Spanish spelling of the names.

Translation and hacking: made only with AI (Claude, reviewed by ChatGPT) for personal use. Please don't upload it to romhacking sites. Feedback from Spanish speakers is very welcome!


r/WonderSwan • • 1d ago

[WonderSwan] Ring Infinity (リング∞) – English translation patch v0.9 (AI-made)

Thumbnail
gallery
0 Upvotes

Ring Infinity is a horror sound novel released only in Japan by Kadokawa Shoten and Bandai for the WonderSwan in August 2000. It is set in the world of Koji Suzuki's Ring: a rumour about a cursed video that kills whoever watches it exactly one week later, students dying of heart failure, e-mail pals, a "cursed homepage" and the shadow of Sadako Yamamura. You read the story and pick what to say and do; your choices open different branches and endings over three chapters.

This patch translates it into English.

Download: HERE

As suggested in the comments, Claude made a .bps that only unlocks the WonderGate content and leaves the Japanese text untouched: HERE

What is translated

  • The whole story (about 4,300 screens of text), the choices, the menus, the save/delete dialogs and the staff roll labels.
  • The Japanese original shows the text vertically; the English is shown in horizontal lines with a new variable-width font, in the same window under the pictures.
  • Text drawn as pictures: the WonderGate dialogs ("Connect?", "Connection failed."...) and the Japanese inside some scene pictures (the "Suicide Diary" web page, the mail program, a scream).
  • WonderGate unlock: the Mobile WonderGate service is long gone, but its content is in the game. The patch unlocks it: "Bonus scenarios" (an extra scenario, a different take on the first chapter) and "Read mail" (31 mails from other players, shown one after another each time you open it) appear in the title menu.
  • Names follow the official English editions of the Ring novels (Kodansha): Sadako Yamamura (never "Samara"), Shizuko Yamamura, Izu Oshima. Other names in Hepburn, given name first, no honorifics.

How to patch

Apply the .bps patch to your dumped Japanese ROM Ring Infinity (Japan).ws (4 MB, CRC32 14ADBD4B) with Floating IPS, beat or an online BPS patcher. The result is 8 MB (CRC32 FF214908). Keep the .ws extension.

Wondergate unlock only: apply the BPS to Ring Infinity (Japan).ws (CRC32 14ADBD4B) with Floating IPS, beat or ROM Patcher JS. On the title menu, move the cursor with the Y buttons and confirm with the X button you use to advance the text.

You must provide your own copy of the original Japanese game to apply it.

About the translation

This translation was made entirely with AI, as a personal project: translated by Claude directly from the Japanese, then reviewed line by line by ChatGPT, and the review was checked again by Claude before applying it. It is shared as it is, for personal use – please do not upload it to romhacking sites.

Known limitations

  • The WonderGate menu is translated but can no longer connect (the unlocked content above is what it used to deliver).
  • Kept as in the original: the title logo, the kanji that flash in the cursed video (the story text says what they mean), a few handwritten notes and a magazine page inside the pictures, and the staff and cast names in the credits (their readings are not given anywhere, so they were not guessed).
  • Tested in an emulator (menus, WonderGate dialogs, long autoplay runs of the story and of the bonus scenario, the mails, scenes from several chapters, choices, one ending with the staff roll), but not every branch. If you find cut text, leftover Japanese or a crash, please tell me where.

Changelog

  • v0.9 – ChatGPT review applied (checked again by Claude): 24 corrections of meaning and wording, ellipses unified, 4 editorial choices. WonderGate unlock (bonus scenario and all mails, senders' nicknames romanised). Title menu centred.
  • v0.1 – First release.

Sources

  • The Japanese game script and graphics (main source).
  • Kodansha USA pages of the Ring novels and the Wikipedia article on Birthday for the official English spelling of the names.
  • Sources used by the ChatGPT review: the KADOKAWA game catalogue, scans of the original manual, Kodansha USA's Ring pages, an analysis of the game's endings (redcapote.hatenablog.com), a 2000 ASCII article on the Mobile WonderGate, Games Database.
  • A source report prepared for this project (manual scans, KADOKAWA catalogue, game databases, fan analyses of the endings) as reference for the title, the names and the editorial choices.

Screenshots: Japanese on the left, English on the right.

Thanks to u/LaCaipirinha for letting me translate this.


r/WonderSwan • • 2d ago

[Release] One Piece: Grand Battle Swan Colosseum (WonderSwan Color) - AI English translation

Thumbnail
gallery
0 Upvotes

From TV Animation One Piece: Grand Battle Swan Colosseum is Bandai and Dimps' 2002 fighting game for the WonderSwan Color, released only in Japan. It covers the story up to the Alabasta saga: Twin Capes, Whisky Peak, Little Garden, Drum Island, then Alabasta. In Event Battle each of the 13 fighters takes on seven opponents across seven stages, with a short exchange before every fight. Most of them replay a moment from the series, and a few are "what if" match-ups that never happened in canon. Along the way there's a Kung-fu Dugong bonus round, a final showdown with Crocodile in the underground temple, and 60 wanted posters to collect, each with its own effect.

This patch translates it into English.

Please read: this translation was made with AI (Claude), as a hobby project. A person (me) made every judgement call and played the build before release, but nobody on the project is a professional translator. I'm sharing it as it is for anyone who wants to play. Please don't upload it to romhacking sites (romhacking.net and the like). It may not be up to the standard of a real fan translation and it doesn't belong there.

What's translated

  • All the game's text: every Event Battle scene, all 13 endings, the battle call-outs, the wanted posters and their effects, and the Luffy vs Crocodile finale.
  • Graphics: the title menu, banners, buttons, settings, the Continue screen, the poster screen, the character name tags on select and VS screens, stage names, the Stage Select banner, the Mini-Game result and ranking lines, the link-cable message and the copyright screen. All of them are redrawn in English in the original's colours and layout.
  • Wanted posters: Mihawk's heading 世界最強剣士 now reads "Greatest Swordsman". Nine posters whose artwork printed Bandai's 2002 spellings (PERU, COSA, CENTAURUS...) now show the official names (PELL, KOZA, KENTAUROS...), redrawn from the posters' own lettering.
  • Left original: the title logo stays Japanese, and 絶対正義 ("Absolute Justice") on the Marines' posters is kept because it's part of the artwork and looks cooler.

Names follow the VIZ English manga: Monkey D. Luffy, Roronoa Zoro, Nami, Usopp, Sanji, Tony Tony Chopper, Tashigi, Smoker, Mr. 2 Bon Clay, Miss All Sunday, Sir Crocodile, Portgas D. Ace and Mr. 1 (Daz Bonez). Places: Twin Capes, Whisky Peak, Little Garden, Drum Castle, Nanohana Harbor, Sandora River, Rainbase, Alubarna. Bon Clay keeps his voice: "okama" and Okama Kenpo as in the manga, "moi" for あちし, and "Don't be ridicu-loooous!!".

How it was made: AI translation, independent checks, human decisions

  • Claude translated the script directly from the Japanese text in the ROM, and did all the hacking (text engine, font, graphics).
  • A second, independent Claude reviewer checked all 292 messages against the Japanese and corrected 17. A polish pass followed, and a separate verifier checked every proposed change against the Japanese: 41 of 42 accepted.
  • Every message was rendered in an emulator with every glyph logged: 292 messages, 718 pages, no overflow and no leftover Japanese. All 13 Event Battle routes were played to their endings by script without any Japanese reaching the message box.
  • A final pass reread every message against the Japanese, played Grand Battle mode (Single and Tag), paged through all 60 wanted posters, and watched the staff roll.
  • The judgement calls were listed with the Japanese, a literal reading and the options, and I decided each one by hand. They include names and epithets, Bon Clay's speech, a few departures from the literal text, and which graphics to keep. Then I played it.

Changelog

  • v1.2: first public release. Compared with the earlier private builds, it adds Mihawk's poster heading in English, the official names on nine posters (both found by the final pass), and a better line break in one dialogue line.

Sources consulted

  • Japanese text: the WonderSwan Color ROM itself.
  • Names, techniques and places: the VIZ Media English manga. One exception by choice: Lucky Roux, the anime spelling.
  • Fonts: hand-drawn pixel fonts made for this patch; banner lettering in Avenir Next Condensed Demi.

How to patch

Apply the BPS to the Japanese ROM "From TV Animation One Piece - Grand Battle Swan Colosseum (Japan)" (CRC32 F8A1DD2B) with Floating IPS, beat or ROM Patcher JS. The result should be CRC32 A10DA837. The ROM keeps its size (8 MB), so it runs anywhere the original does. Keep the .wsc extension.

You must provide your own copy of the original Japanese game to apply it.

Download: https://github.com/PokemonGoDB/wonderswan-english-patches/releases/tag/grand-battle-v1.2

Known issues

  • Link-cable features (poster trading and 1P vs 2P) couldn't be tested here, because I don't have two flash carts currently. Their messages are translated but haven't been seen on two consoles.
  • The title logo is still the Japanese one, on purpose.
  • If you find leftover Japanese, cut text or a crash, please tell me where it happened.

Technical notes (for the curious)

  • New proportional font (8-pixel capitals with a drop shadow), drawn at any pixel offset inside the game's 16x16 text cells by a small hook in its glyph routine. About 35 characters fit on a line.
  • The English script lives in a bank that was empty in the original. Each Japanese message now starts with an 8-byte jump to its English version, so every existing pointer still works.
  • The ROM doesn't grow: all new text and code sit in space that was blank (FFh) in the original.
  • The developers left some unused scenes in the game: a ROM version screen ("ROM Ver. 0.031 02/05/27"), a character and palette viewer, a link-cable test and two debug battles. They're already in English and no menu reaches them, so the patch leaves them alone.

A Note On My Justifications for AI Use

I have been an avid fan of the Wonderswan system for a very long time now. It was actually a motivating factor for my various attempts to learn Japanese (which have all failed so far). I always wanted to explore the game catalog more, but the lack of English translations made it extremely difficult to do so. Here's the thing: There's a reason many of these games have not been translated yet. It's not just the fact that Japanese > English translation is difficult. There's also the fact that the original developers used all kinds of tricks and technical feats to make these games work. Most games do not have a searchable directory of text that you can just replace with English equivalents. While some are easier than others, translations for some of these would take not only an expert in Japanese > English translation, but also someone with vast game development and programming experience.

I say all that to say: I get why people are apprehensive about AI usage for this type of thing. However, these games have been around for a very long time now and most of them have still not received a translation. I (and others) have chosen to spend our time and money to utilize AI to translate the games and actually make them playable for the wider community. If you don't agree with that, that's completely fine. I am more than happy to remove any of my translations if better, human ran translations are released at a later date. We already decided to skip any games where someone is actively working on a manual translation. While nowhere near what a manual translation effort would be, I do spend a considerable amount of time trying to work through each game's translation. I stress over small details and try my best to make the right calls. And I've probably messed some stuff up, which is why I welcome feedback.

I'm just looking forward to digging through all of these games. It's a great time to be into Wonderswan games.


r/WonderSwan • • 2d ago

A little tool I’ve been working on for playing Japanese games

Thumbnail gallery
0 Upvotes

For those of you who are playing WonderSwan games on an emulator, try it! Obviously, I'm not the creator, it’s just a repost


r/WonderSwan • • 4d ago

[Release] Blue Wing Blitz (WonderSwan Color) - AI English translation patch

Thumbnail
gallery
0 Upvotes

Blue Wing Blitz is Square's 2001 strategy game for the WonderSwan Color, released only in Japan. The world is ruled by Ordia, an island floating high above the clouds, whose airships keep the nations of the land in line. In the Esk Republic, the young pilots of the Tadaga Village Guardians take to the sky and carry the fight all the way up to Ordia. Turn-based moves on a hex map, dogfights and bombing runs, an airship as your base, and a squad of pilots and aircraft to build up between missions.

This patch translates it into English.

Download: HERE

Please read: this translation was made entirely with AI (Claude), as a personal project. I'm sharing it as it is for anyone who wants to play, but it must never be uploaded to romhacking sites (romhacking.net and the like): it isn't up to the standard of a real fan translation and it doesn't belong there.

What's translated

  • The whole story: the opening, every event scene between missions, the airship and base conversations, the final chapter and the ending.
  • Every mission briefing, the win and lose conditions, the messages shown on the map during missions and the stage results.
  • The training flight (tutorial).
  • The air battle screen: maneuvers, weapons, enemy ace quotes, hit and damage messages.
  • The base: factory, aircraft setup, the data room (aircraft profiles, model numbers, weapons and items with descriptions), crew advice, airship upgrades and aircraft mods.
  • Map menus, save/load, name entry (Latin letters and English labels), the new game+ options, the default pilot names and aircraft nicknames.
  • Graphics: the place caption of the first mission is redrawn in English, and the katakana reading under the title logo is removed (the logo already says "Blue Wing Blitz"). The title menu and copyright line were already in English.

Names: the pilots are Keid, Payer, Blore, Rayetta, Roster, Poty, Sersh and Havilan; the other characters are romanized from the Japanese (Ryusch, Moue, Dorni, Fia, Grebi...). Places: Ordia, the Esk Republic, Tadaga Village, Mackai, Roggina, Peag, Wanaram... The aircraft keep the myths they are named after: Fafnir, Hraesvelg, Nidhogg, Jormungand, Fenrir, Gulltoppr, Gullinbursti, Vidofnir, Svantovit, Belobog, Triglav...

How it was made: a double AI check

  • Claude translated the game directly from the Japanese text of the ROM and did all the hacking (font, text engine, name tables, graphics).
  • ChatGPT then cross-checked all 1,500 lines against the Japanese: meaning, adaptation, mood, names and terms. It marked each line as certain, uncertain, doubtful or "to decide".
  • Claude checked every proposal against the Japanese and against the window sizes; the open choices (names and jokes) were decided by hand.

Changelog

  • v0.9.1
    • Battle screen and mod effects: "Opt Spd" (optimal speed, 最適速度) instead of "Cruise"; the dive maneuver now boosts every ground attack, not only bombing.
    • Story: Trund's "you might just be the heroes who save Esk... no, this entire land" and Ordia's final dialogue are closer to the Japanese.
    • Weapons and mods: 13-30 mm "Cannon" instead of "Autogun", "8-round burst" and "4-round burst", "Fin Mod" and "Tailplane Mod"; a few aircraft profiles and dialogue lines.
    • Names: Rofe (was Rohe), Gulltoppr (was Gulltopr), and the maneuver "Long Shot" (was "Wild Shot", from the proverb 二階から目薬, "eye drops from the second floor").
  • v0.9: first release.

Sources consulted

  • Japanese text: the WonderSwan Color ROM itself.
  • Character and place names: Square's 2001 announcements as reported by RPGamer (archive.rpgamer.com, March-May 2001) and the English Wikipedia article "Blue Wing Blitz".
  • Game terms: the official PlayOnline site (via the Wayback Machine) and the Japanese summaries on Weblio.
  • Aircraft names: the Norse, Slavic and Celtic myths they come from.
  • Aviation terms: the FAA Airplane Flying Handbook and Wikipedia's articles on basic fighter maneuvers; Japanese idioms: Kotobank.
  • Font: Shinonome 6x12 (public domain).

Images (original on the left, English on the right)

  1. Title screen
  2. Opening story
  3. Place caption of the first mission
  4. Name entry
  5. Training flight
  6. Story scene
  7. Mission briefing
  8. Dogfight: an enemy ace
  9. Aircraft profile
  10. Aircraft setup

How to patch

Apply the BPS to your dumped Japanese ROM "Blue Wing Blitz" (CRC32 99027238) with Floating IPS, beat or ROM Patcher JS. The result should be CRC32 49F5C61E. It's a WonderSwan Color game, so keep the .wsc extension.

You must provide your own copy of the original Japanese game to apply it.

Known issues

  • It hasn't been played start to finish yet. I tested the opening, name entry, the tutorial, story scenes and mission briefings, air battles, the map messages and the base screens in an emulator. Some rarely seen message may still overflow its window or wrap early: if you find leftover Japanese, cut text or a crash, tell me where it happened.
  • Names you type are at most 7 letters, as in the original. Model numbers are shortened to fit the same field (Ar. = Arius, La. = Lamya, Mi = Mima), and a few default nicknames use two letters per tile.
  • English needs more room than Japanese, so some speeches are split over more text windows.

Technical notes (for the curious)

  • New variable-width 12-pixel font based on Shinonome 6x12, in the game's own font sheet; lines are wrapped by pixel width for each kind of window, and long speeches continue in new windows.
  • The English script lives in free ROM space and the original script calls it through small jump stubs.
  • The default name tables were rebuilt, and the place caption (a compressed picture) was decompressed, redrawn and recompressed in place.

Translation and hacking: made entirely with AI (Claude) for personal use. Please don't upload it to romhacking sites. Feedback and bug reports are very welcome!


r/WonderSwan • • 5d ago

Ridge Racer: Type W [BETA] [Fan created game]

Thumbnail
gallery
17 Upvotes

Hey all, I have created a Ridge Racer game for the Wonderswan Color. It's inspired by of course, the Ridge Racer series, re-imagined for a 2D console in the vein of Outrun. It involved the use of generative AI and took about 2 weeks to make, including play testing. I'm calling it a beta and welcome any feedback/suggestions. I have done my best to tune and balance speed, corners, steering etc. and I find the game genuinely very fun to play myself, but I'm keen to see what people think about the difficulty curve.

The game includes:

  • 6 tracks + 1 secret track: Kyoto, Niseko, Paris, Honolulu, San Francisco, Montville
  • Arcade Mode: Race against seven rivals, drift through corners and reach checkpoints to extend your time.
  • Tournament Mode: Compete across a series of races and aim for the overall championship.
  • Story Mode: A journey into the racing world through manga-style cutscenes inspired by Initial D, with character rivalries and special race settings.
  • Drifting and Turbo: Controlled drifts fill your Turbo gauge, then tap X1 for a burst of speed.
  • Tutorial: Basic tutorial teaching acceleration, drifting and Turbo controls.
  • Ridge Racer Atmosphere: Classic Ridge Racer music and race announcements.

https://gofile.io/d/Y01hh77T


r/WonderSwan • • 6d ago

Bye Bye Yellow Label

Thumbnail
gallery
28 Upvotes

Nothing like printing your own labels after painstakingly measuring 4 times and getting lazy to cut the corners.

I intentionally did not make it fit flush and went with a full vector layout instead of using the official .png available online.

Paper used was a special High Gloss Silver Foil Photo Sticker Paper by QUAFF and then I put a Matte Cold Lamination sticker on it to protect the print.

Really happy girly here 🥰


r/WonderSwan • • 5d ago

[Release] Final Fantasy IV (WonderSwan Color) - AI English translation patch with developers' hidden debug menu

Thumbnail
gallery
0 Upvotes

Final Fantasy IV for the WonderSwan Color is Square's 2002 version of the classic, released only in Japan. Cecil, Dark Knight and captain of Baron's Red Wings, begins to doubt the king he serves, and sets out on the journey that will make him a Paladin.

This patch translates it into English.

Download: HERE v0.9.1

Please read: this translation was made entirely with AI, as a personal project. I'm sharing it as it is for anyone who wants to play, but it must never be uploaded to romhacking sites (romhacking.net and the like): it isn't up to the standard of a real fan translation and it doesn't belong there.

How it was made

  • Claude translated it directly from the Japanese text of the WonderSwan Color version. It is a new translation, not the SNES, GBA or Pixel Remaster script pasted in.
  • ChatGPT then reviewed it line by line (meaning, tone and official names), and Claude applied the accepted corrections to the ROM.
  • Final QA by myself (Oooohhhh... a human!)

About the names: names and terms follow the official English localization by Square Enix: the Pixel Remaster first, then the GBA/PSP versions (Cecil, Kain, Rosa, Rydia, Edward, Yang, Palom, Porom, Edge, FuSoYa, Golbez, Red Wings, Land of Summons, Elemental Lords, Lunar Whale, Manor of Prayers...). Some of them don't match a literal reading of the Japanese (for example ギルバート is "Edward"). This is intentional: they are Square Enix's choices, not mine. Only terms with no official English were translated from the Japanese.

What's translated

  • The whole event script: 1,541 messages.
  • All 245 battle messages.
  • Item, spell, command, monster, status, job and location names.
  • All the menus: title, main menu, items, magic, equipment, status, formation, config, save/load/suspend, shops, inns, Fat Chocobo, name change, treasure chests, item descriptions.
  • The opening narration and Mysidia's legend.
  • Graphics: a new variable-width font for dialogue and battle messages, English menu letters, an English name-entry keyboard; the Japanese subtitle under the logo was removed. The title logo is kept as it is.

Credits

Official names: Square Enix, Final Fantasy IV Pixel Remaster and the GBA/PSP English localizations.

Sources

Images (original on the left, English on the right)

  1. Title screen
  2. Dialogue
  3. Opening narration
  4. Main menu
  5. Status
  6. Equipment
  7. Config
  8. Battle: commands
  9. Battle: rewards
  10. Weapon shop
  11. Fat Chocobo
  12. Name entry (Namingway)

How to patch

Apply the BPS to the Japanese ROM "Final Fantasy IV (Japan)" (CRC32 F699D6D1) with Floating IPS, beat or ROM Patcher JS. The result should be CRC32 30A07D14 (debug version: 5F97F490). It's a WonderSwan Color game, so keep the .wsc extension. You must provide your own copy of the original Japanese game to apply it.

Two versions: the normal patch, and a debug patch that also unlocks the developers' hidden debug menu (translated): on the field, hold B and press START. It has map warps, test battles, every shop, monster and character viewers, events, sound test, story flags and more. Use it at your own risk, it can break your save.

Known issues

  • It hasn't been played start to finish yet. I tested the opening, dialogue, narration, all the main menus, config, save/suspend, a full battle (commands, attacks, victory, gil and EXP messages), a weapon shop, the Fat Chocobo and Namingway's name entry in an emulator. If you find leftover Japanese, cut text or a crash, tell me where it happened.
  • Menus and battle use fixed 8x8 cells, so item, spell and monster names are shortened to 8 letters (DarkSwrd, BlckLzrd...).
  • A suspend save made with the Japanese ROM keeps the Japanese character names, which the English font can't show: start a new game, or rename the party with Namingway.

Technical notes (for the curious)

  • Variable-width 5x8 font (based on the public domain X11 5x8 font) drawn pixel by pixel into the dialogue window and the battle message line. Numbers keep the original bold digits.
  • Dialogue is wrapped by pixel width and paged automatically; the English script lives in free ROM banks.

Translation and hacking: made entirely with AI for personal use. Please don't upload it to romhacking sites. Feedback and bug reports are very welcome!

Changelog * v0.9.1 – Translation corrections and bug fixes: * げんじゅう is now "Eidolon" everywhere (Eidolon King, Eidolon God, Eidolon Cave, Eidolon Town). * The Mist Cave question before the Yes/No choice is now unambiguous. * The training-room hint names the real menu command ("Order"). * Meaning and wording fixes in the opening chapters (Cecil, Rosa, Rosa's mother, Kain, the opening narration, Baron townspeople). * Question marks fixed in several lines. * v0.9 – ChatGPT review applied, official names pass. * v0.1 – First release.


r/WonderSwan • • 6d ago

need to repair my screen but I'm nervous. any advice?

6 Upvotes

hiya (*^o^*) ★彡 I'm in a little pickle. I got my wonderswan color a year or two ago and I love it but the screen is so dark I think I need to replace the polarization on the screen? Ideally I would just hire someone to do it for me but the one modding guy I knew ended up folding his business so I'm just thinking of repairing it on my own. I hear its relatively easy? isopropyl and ipad polorizing screen film I hear is what you need I think. anyways kinda nervous about it and wanted any tips or advice so I dont brick or ruin it.


r/WonderSwan • • 5d ago

Mega Man Zero on WonderSwan – An Early Experimental Port Powered by GPT!

0 Upvotes

I know everyone has different opinions about AI, but seeing something like this running on the WonderSwan is truly amazing to me!

Mega Man Zero for WonderSwan is still in an early experimental stage, and I'm continuing to develop it with the help of GPT.

I hope people see AI for what it is: a tool to learn, create, and push technical boundaries, not replace human creativity.

There's still a long way to go, but this project shows just how much potential this little console has always had.

Made out of passion for retro gaming and the joy of pushing old hardware beyond expectations!

Share the BPS

https://we.tl/t-4cTfkjVrS3gKZKtu

Apply it directly to the GBA version and save the output as a .wsc file.


r/WonderSwan • • 6d ago

[Release] Chou Aniki: Otoko no Tamafuda (WonderSwan) - AI made English translation

Thumbnail
gallery
2 Upvotes

Chou Aniki: Otoko no Tamafuda ("Man's Soul Cards") is Masaya's 2000 card battle game for the WonderSwan, a spin-off of the Cho Aniki series, released only in Japan. Two years after Botei Bill was beaten, the Builder System is at peace again, until the Mighty Comet City Empire comes along its orbit to feed on the Aniki of every planet and steal their Protein. You pick your Aniki, travel from planet to planet, talk with the locals, build a 40-card deck and fight card battles with Protein, Love, World and Move cards. Yes, it is exactly as strange as it sounds.

This patch translates it into English.

Download: HERE

Please read: this translation was made entirely with AI (Claude) and ChatGPT, as a personal project. I'm sharing it as it is for anyone who wants to play, but it must never be uploaded to romhacking sites (romhacking.net and the like): it isn't up to the standard of a real fan translation and it doesn't belong there.

What's translated

  • The story: the opening crawl, every conversation in the towns and on the planets, the scenes before and after the battles, the ending and the staff roll.
  • The battles: menus, all the messages (draws, Protein, damage, counters, bad status), the geta toss, the battle quotes of every character, win and lose messages.
  • The cards: names, info texts and short effects of the 200+ cards, and the card pictures with kanji (Sweat, Meat shield, Weapon, Throw).
  • The menus: game mode select, character select and profiles, field menu, status, save, settings, deck building, View Cards, Feelings, name entry (with an English letter grid), the link battle and card trade menus, Sound Test and Fight! Test.
  • Graphics: title subtitle, mode select signs, character select prompts, the shuffle and draw banners, the World view, the bath house curtain behind the geta toss, deck select header, status screen, name entry balloon, comet countdown, "THE END", and the signs in the towns (shop and bar signs, banners, the station, the concert stage, the host club and more).

Idaten, Benten, Adon, Samson and Botei keep the names used in English for the Cho Aniki series; "Aniki" stays Aniki and Protein stays Protein. The many puns and parodies in the card names and dialogue are adapted rather than translated literally.

Images (original on the left, English on the right)

  1. Title screen
  2. Game mode select
  3. Character select
  4. Opening
  5. Versus screen
  6. Geta toss before a battle
  7. Shuffling the deck
  8. Battle menu
  9. Cards in hand
  10. Field menu
  11. Status screen
  12. Big Sis banner
  13. Concert stage
  14. Comic shop
  15. Bro Code banner

How to apply

Apply the BPS to the Japanese ROM "Chou Aniki - Otoko no Tamafuda" (CRC32 7FFF2520) with Floating IPS, beat or ROM Patcher JS. The result should have CRC32 5DDD9353. It runs on the original WonderSwan and on the WonderSwan Color. You must provide your own copy of the original Japanese game to apply it.

Known issues

  • Not played start to finish yet. In an emulator I tested the opening, character select, the first story scenes and towns, the field menu and all its screens, deck building, name entry, card battles (Fight! Test), the shuffle and draw scenes, the geta toss and the Sound Test. Some rarely seen messages may still overflow a window or end a line early: if you find leftover Japanese, cut text or a crash, tell me where it happened.
  • The link battle and card trade couldn't be tested with a second WonderSwan.
  • A few tiny scribbles in the towns are left as they are (toilet graffiti, a carved plaque, a small notice, a poster, the words floating around the rose in space, some dark shop signs too small to read even in Japanese).
  • English needs more room than Japanese, so some speeches are split over more text windows.

Technical notes (for the curious)

  • New variable-width font and new drawing code for the text engine; lines are wrapped by pixel width and menu cursors keep their original positions.
  • Graphics are redrawn tile by tile: tilesets are grown or moved to free space, and the maps and metatile tables (town maps included) are rewritten to point to the new tiles.

Translation and hacking: made entirely with AI (Claude and ChatGPT) for personal use. Please don't upload it to romhacking sites. Comments and bug reports are welcome!

Chō Aniki: Otoko no Tamafuda — Adaptation, Wordplay and Cultural References

About this translation

English translation v0.9 of Chō Aniki: Otoko no Tamafuda (Masaya, 2000, WonderSwan), made entirely with AI. The first translation is by Claude; it was then checked by ChatGPT and finally revised by Claude, which applied the changes to the ROM.

The game is almost all jokes: cards, dialogue, staff gags and signs are full of parodies and references to 1970s–1990s Japan. This document lists the sources used, the adaptation choices, and the wordplay and references in the game, with the final English rendering.

Sources

Series names follow official sources and established English usage; meanings and references were checked against dictionaries and the pages of publishers and rights holders.

Series and game

Anime, manga and video games

TV, music, film and advertising

Dictionaries and terms

Purpose and scope

Otoko no Tamafuda draws heavily on Japanese popular culture, particularly anime, manga, video games, television, advertising, music, wrestling, and comedy from the 1970s through the 1990s. Some jokes depend on the shape of Japanese characters; others deliberately misquote a familiar line or replace one word in a well-known title.

This commentary explains the translation decisions and identifies the cultural references without reproducing the game’s complete script. Only selected short Japanese excerpts appear below, where they help explain a specific translation choice or allusion. The broader reference index describes other discoveries without systematically reproducing the underlying dialogue.

The identifications are interpretive research findings, not official explanations from the developers. High means a clear or strongly supported allusion; medium indicates a plausible identification; low denotes a tentative connection. These are research confidence labels, not legal or historical certifications.

Copyright and attribution

Chō Aniki: Otoko no Tamafuda, its original script, characters, graphics, and other assets remain the property of their respective rights holders. The short Japanese excerpts in this article are included to support translation criticism, linguistic analysis, and discussion of Japanese cultural references. The article does not reproduce the complete script, and the separately distributed BPS patch does not contain the original game ROM.

This is an unofficial, noncommercial fan research project. It is not affiliated with or endorsed by the rights holders. This notice describes the project's purpose; it does not grant rights or establish that every use is automatically permitted.

Translation approach

The guiding principle was to preserve the effect of the joke, not always its literal wording. Where an English-language audience would recognize the source, the parody was retained. Where a joke depended on Japanese typography, slang, or an untranslatable pun, the translation used an English approximation, a shortened rendering, or a note.

  • Series terminology: Idaten, Benten, Adon, Samson, Botei, Aniki, and Protein retain established series usage.
  • Names: New characters and places are romanized or translated where appropriate, including Sabu, Adam, Yaemon, Hikaru 17, Sa-Naada, Stationmaster Rinta, Great Botei Ozordar, the Builder System, and the Mighty Comet City Empire.
  • Distorted titles: Deliberately incorrect spellings remain visibly incorrect in English, such as Lanqrisser and A1hazard.
  • Mock censorship: The original's circles or omissions are retained where they are part of the joke.
  • Culturally specific words: Kokkuri-san, katsudon, Dontaku, 16-mon, and other terms are sometimes kept because replacing them would erase the reference.
  • Space limits: Card names occupy roughly 112 pixels, while some signs allow only 10–54 pixels. These constraints can take precedence over a complete literal translation.
  • Speech and tone: Camp, mock-heroic diction, exaggerated masculinity, and intentionally silly language are treated as part of the writing rather than errors to normalize.

Deliberate editorial departures

Not every difference is caused by wordplay or screen space. The adaptation also makes a small number of substantive editorial changes, which are disclosed here rather than presented as literal translations.

Context English treatment Why it differs
A suggestive “Johnny’s-type” personal ad Age changed from 17 to 20 Avoids preserving a minor's age in suggestive material
A character's gift involving an explicit panty-shot reference Described instead as a rare candid photograph Removes the sexualized photographic reference
MD/MO initials joke Uses “Mo-ho Devotee” / “Mo-ho's Own pals” Keeps the initials-based joke and its period slang rather than translating word for word
Kaworu-inspired dialogue “You are worthy of my grace” Favors a recognizable dramatic register over a literal rendering of “worthy of affection”
A personal-name pun in a Protein message “The source of every Aniki's power!” Preserves the function of the line after the name-based pun is lost
A small bookstore sign “BOOK” “BOOKSTORE” would not fit the graphic

These choices can be debated. The patch aims for a playable English adaptation, not a strict scholarly translation.

Graphics and signage: selected examples

Most ordinary menu labels, prompts, and signs are not reproduced here: listing every original string would add little to a cultural analysis. The following examples are included because they illustrate an adaptation problem.

Short Japanese excerpt English in the patch Why this example matters
めさい湯 MA / SA / YA / BATH Turns the publisher's name, Masaya, into a bathhouse joke on a noren curtain
兄弟仁義 BRO CODE Recasts a yakuza-era phrase about brotherly honor in compact contemporary English
兄ビール BRO ALE Makes the recurring “big brother / Aniki” branding legible in a tiny graphic
兄きの窓口 BRO TIX Plays on Japanese railway ticket-counter naming while preserving the “BRO” motif
春コミカタログ有〼 Haru Comi Catalogs! Refers to a real spring dōjinshi event; the distinctive Japanese shop-sign ending is compressed
ステイタスなのよん! Status, baby! Retains the exaggerated, campy voice instead of producing a neutral “Status” heading
書店 BOOK A straightforward case in which graphic width, not meaning, determines the final wording

Elsewhere, the same approach produces English labels such as BRO BENTO, HIKARU 17 LIVE, THE END, and Feelings. These are described rather than exhaustively transcribed.

Wordplay: selected translation examples

Japanese puns often operate at the level of syllables, kanji, or typography. The excerpts below are short samples chosen to illustrate different mechanisms, rather than an inventory of every joke in the game.

Short Japanese excerpt English rendering Explanation
ドローしマッスル Drawing cards, muscle-style! Replaces the polite ending -masu with “muscle”
デッキを選択しマッチョ! Pick your deck, macho-style! Swaps a sound-alike “macho” into a polite request
ブリーフケース Brief-Case Exploits the overlap between briefcase and men's briefs
殺禍唖暮折爆弾 Soccer Ball Bomb Uses extravagant delinquent-style kanji to spell out “soccer ball”
腸捻転…ちょうでんねん Yep, you gut it right Twists a medical term into a Kansai-flavored sound joke
メサイヤ人 Masayans Fuses the publisher's name, Masaya, with Saiyan
モー息子 Morning Musuko Changes Morning Musume (“daughters”) into musuko (“son”)
急がば兄貴 In a hurry? Take the Aniki route! Reworks a familiar Japanese proverb
藻肉 Space meat-debris Substitutes the character for “meat” into a word for debris
パチモン!ゲットだぜ! Knockoff-mon! Gotta catch 'em! Blends Pokémon with pachimon, meaning a knockoff
ADフィールド A.D. Field Changes a letter in Evangelion's AT Field
スマイル0円 Smile: 0 yen Alludes to McDonald's Japan's “smile” promotion

Other examples use an intentionally mangled Langrisser title, a parody of Street Fighter move names, the suffixes of Japanese railway signage, a pun on a fugu “prize” and poisoning, and jokes built around Aniki, meat, and Protein. They are described here without copying every source line.

Cultural allusions: closer readings

Gundam — parody through a single substitution

ペン太郎大地に立つ becomes “Pentaro Stands on Earth!”, echoing the title of the first Mobile Suit Gundam episode. Another line, とうさんにもぶたれた事無いのに, invokes Amuro's famous protest about never having been hit by his father. The comedy depends on the player recognizing serious mecha-drama language in an absurd setting.

Sources: Gundam episode title · Gundam dialogue reference.

Evangelion — Kaworu's distinctive voice

The short fragments 歌はいいね and 好意に値するよ evoke Kaworu Nagisa's dialogue in Neon Genesis Evangelion. The game's joke shifts the emotional content toward meat, a recurring Chō Aniki obsession. The English version prioritizes a recognizably Kaworu-like tone rather than a mechanically literal sentence.

This is a particularly well-supported identification because a Japanese review of Otoko no Tamafuda explicitly recognizes the Kaworu parody.

Sources: Japanese game review · Kaworu reference.

Langrisser — visually incorrect Japanese

ラソグリッサー and アノレハザード mimic Langrisser and Alhazard by substituting look-alike kana. Translating the words correctly would destroy the gag, so the patch uses the similarly suspicious “Lanqrisser” and “A1hazard.”

Source: Langrisser official character material.

Advertising — a Matsumoto Kiyoshi commercial

何でも欲しがるチョーさんは〜♪ appears to parody the late-1990s Matsumoto Kiyoshi commercial catchphrase about “Mami-chan,” replacing the name with “Chō-san.” Without knowledge of the advertisement, the line looks like an ordinary sing-song sentence.

Sources: BPCJ advertising archive · Oya Soichi Library · additional discussion.

Cinema — one altered kanji changes the joke

垢と黒のエクスタシー is rendered “Ecstasy of Grime and Black!” The joke substitutes aka (“grime”) for aka (“red”) in the Japanese tagline associated with the film Ten to Chi to. The English translation cannot preserve the identical pronunciation, but it keeps the deliberately absurd imagery.

Sources: KADOKAWA · allcinema.

Haiku — classical language with an Aniki intrusion

秋深し・・・隣は何をする兄貴 reworks a well-known haiku by Matsuo Bashō, inserting “Aniki” into a familiar literary cadence. The parody is more effective when readers understand that it is not merely a poetic-sounding sentence, but a deliberate alteration of a recognized verse.

Source: Kotobank, 秋深し.

Takahashi Meijin — an old video-game slogan

1秒間に16張り手 refers to Takahashi Meijin's legendary 16 button presses per second, converted here into 16 slaps per second. The companion gag about limiting slapping to one hour a day invokes the famous “games: one hour a day” slogan. A brief explanatory note helps the joke survive for readers unfamiliar with 1980s Japanese gaming culture.

Sources: Takahashi Meijin's blog · ITmedia.

Retro computing — the Z80 nickname

ゼッパチ is Japanese computing slang for the Zilog Z80. In context, the explicit “8-bit” detail reinforces the joke's retro-computing flavor. This is a technical reference rather than an anime or television parody.

Sources: Japanese computing terminology · historical computing research.

Additional cultural reference index

The following index preserves the wider findings from the translation review without reproducing the corresponding Japanese game lines or the entire set of English translations. Some entries refer to a general cultural practice rather than a specific quotation. The confidence labels reflect the research assessment, and a tentative identification should not be treated as established fact.

Anime, manga and video games

  • Space Battleship Yamato — confidence: high.
  • Sanada, the scientist in Yamato — confidence: high / medium.
  • Gundam, episode 1 title — confidence: high.
  • Gundam, Amuro in episode 9 — confidence: high.
  • Char Aznable, Gundam — confidence: medium.
  • Kaworu, Evangelion ep. 24 (with 肉 "meat" in place of 好き) — confidence: high.
  • Shinji, Evangelion — confidence: high.
  • AT Field, Evangelion — confidence: high.
  • Langrisser (Masaya) and the Alhazard sword — confidence: high.
  • Street Fighter (Shoryuken, Shun Goku Satsu, Ken and Ryu) — confidence: high.
  • Akira, Virtua Fighter — confidence: high.
  • Bushido Blade (Square, 1997) — confidence: medium.
  • Mazinger Z — confidence: high.
  • Tetsuwan Atom (Astro Boy) — confidence: high.
  • Doraemon and its theme song — confidence: high / medium.
  • Pokémon — confidence: high.
  • The spell from Jungle Kurobe (Fujiko F. Fujio) — confidence: high.
  • Tokimeki Memorial (Konami) — confidence: medium.
  • Maicching Machiko-sensei — confidence: high.
  • Patalliro! and The Poe Clan (Moto Hagio) — confidence: high.
  • From Eroica with Love — confidence: high.
  • The Rose of Versailles (Lady Oscar) — confidence: high.
  • Hiromi Oka and her coach in Aim for the Ace! — confidence: medium.
  • Fist of the North Star (Hokuto school, Raoh, Jagi) — confidence: high / medium.
  • Galaxy Express 999 — confidence: high.
  • The horror manga Eko Eko Azarak — confidence: high.
  • Multi from ToHeart, the Toranoana store — confidence: high.
  • Manga by Kajiwara and Nakajō (1978) — confidence: high.
  • Class change in JRPGs — confidence: high.
  • Tokuma's Roman Album anime artbooks — confidence: high.
  • Takahashi Meijin: 16 presses per second, "games one hour a day" — confidence: high.

TV, music, film and public figures

  • Giant Baba's "16-mon kick" — confidence: high.
  • Hayashiya Kikuzō's comic song — confidence: medium.
  • Hiromi Gō, 男の子女の子 — confidence: high.
  • Tsunku and Morning Musume — confidence: high.
  • Hideaki Takizawa (Johnny's) — confidence: high.
  • Comedian and dancer Papaya Suzuki — confidence: high.
  • Noriko Sakai's slang (のりピー語) — confidence: high / medium.
  • Catchphrase of the duo Pirates — confidence: high.
  • Waratte Iitomo! — confidence: high.
  • Chiyoko Shimakura's songs and Tokyo no Bus Girl — confidence: high.
  • The Checkers, ギザギザハートの子守唄 — confidence: high.
  • Muki-Muki Man and his exercise song — confidence: medium.
  • Super Sentai live shows at Kōrakuen — confidence: high.
  • The drama Kinpachi-sensei — confidence: high.
  • Tagline of the film Ten to Chi to (1990) — confidence: high.
  • The Third Man (1949) — confidence: low.
  • Enka song and Toei yakuza film — confidence: high.
  • Hibari Misora — confidence: medium.
  • Kikuchi Kan's play — confidence: medium.
  • Poppoya (novel and film) — confidence: medium.
  • Matsumoto Kiyoshi commercial (1999), 欲しがるマミちゃん — confidence: high.
  • McDonald's Japan menu — confidence: high.
  • Byakko Shinkōkai peace prayer — confidence: high.
  • Tea and seaweed brand, a kanji palindrome — confidence: high.
  • The microphone-test phrase (本日は晴天なり) — confidence: high.
  • Bashō's haiku with 兄貴 — confidence: high.
  • The fable of the golden axe — confidence: high.
  • The children's book train Kikansha Yaemon (1959) — confidence: high.
  • Japanese divination game — confidence: high.
  • The Chi-Ha tank — confidence: high.
  • The katsudon offered to suspects in TV cop shows — confidence: high.
  • Japanese name of the German suplex — confidence: high.
  • The kancho schoolboy prank — confidence: medium.
  • Late-1990s kogal girls — confidence: high.

Places, subcultures and production context

  • Japanese gay magazines, names already in the series — confidence: high.
  • Buddhist deities — confidence: high.
  • Shinjuku Ni-chōme — confidence: high / medium.
  • Nakasu, Fukuoka's nightlife district — confidence: high.
  • Hakata Dontaku, Fukuoka festival — confidence: high.
  • Jimbōchō, the used-book district — confidence: high.
  • HARU COMIC CITY, the spring fair — confidence: high.
  • The Comiket circle lottery — confidence: high.
  • Real Tokyo lines and stations — confidence: high.
  • Likely address of NCS, Masaya's parent company — confidence: medium.
  • Imabari towels — confidence: high.
  • Temple carpenters who use no nails — confidence: high.
  • The Zilog Z80 — confidence: high.
  • The console itself ("miracle swan") — confidence: high.
  • The publisher and its parent company — confidence: high.
  • Staff members and Bandai — confidence: high.

Closing notes

This patch is an experiment in AI-assisted translation, text hacking, and cultural interpretation. It is not a claim that AI has replaced professional translators or that every reference has been resolved. The full game still needs end-to-end playtesting, and some jokes may depend on visual, vocal, or historical context that cannot be established from a text dump alone.

If you find an untranslated line, broken text window, mistaken reference, or an English joke that does not work, please report the location and, if possible, include a screenshot.

Credits: Initial translation — Claude. Translation review and cultural research — ChatGPT. Final text integration and patch implementation — Claude. Original game and all underlying intellectual property — their respective rights holders.


r/WonderSwan • • 8d ago

Found near perfect carrying case for WonderSwan Color

Thumbnail
gallery
29 Upvotes

Did some searching and decided to get this portable harddrive case and it ended up being as close to perfect as you can get at this small of a size. Took some pictures with some different set ups.

The only downside is if you add two games and the headphone adapter to the other compartment, it feels a little tight when you zip it up. Zips up just fine, but I'd worry about how much pressure is pushing against the console if you throw it in a bag where it's getting smushed with additional pressure.

It's possible I'm worrying too much since there's a pillowed flap in between but thought it was worth mentioning. That worry does completely go away for me if you just have one game and the adapter in the extra compartment like I have it in the last pic.

Here is the link to the case (it even comes in a few different colors): https://www.amazon.com/dp/B08214HSXD?ref=ppx_yo2ov_dt_b_fed_asin_title&th=1


r/WonderSwan • • 7d ago

Sloppier or sloppiest? How good or bad are AI translations?

0 Upvotes

Claude + ChatGPT audit of Riviera's WonderSwan translation vs. the GBA and PSP localizations

A cross-version audit of Riviera: The Promised Land has been carried out using Claude and ChatGPT, comparing:

  • the original Japanese WonderSwan script;
  • the WonderSwan English translation v0.9.1;
  • the human GBA English localization;
  • the human PSP English localization.

The work was split into two complementary parts:

  • Claude built and analyzed the cross-version pairing, including why only 7,909 lines could be automatically matched across all four texts.
  • ChatGPT then performed a fresh translation audit of those 7,909 shared lines, comparing the Japanese directly against v0.9.1, Human GBA, and Human PSP.

The important point is that 7,909 is not the true amount of content shared by the games. It is the size of the set that could be aligned reliably across all four scripts.

________________________________________________

TL;DR:

Claude and ChatGPT compared the Japanese WonderSwan script of Riviera: The Promised Land with the v0.9.1 WonderSwan translation and the human GBA/PSP localizations.

Claude handled the script alignment and found that the 7,909 shared lines are only the high-confidence automatically matched set, not the true amount of shared content. The actual dialogue overlap is likely much higher, roughly 83–88%, because many lines are duplicates, reorganized between versions, or rewritten too freely for automatic matching.

ChatGPT then re-audited those 7,909 shared lines from scratch. The main result is that v0.9.1 is generally the more source-faithful base, while the GBA/PSP localization is usually more polished and natural but often more condensed or freely rewritten.

GBA and PSP are also much closer than expected: 7,252 lines are identical, another 377 differ only superficially, and only 280 have substantive wording differences.

v0.9.1 is not perfect: there are confirmed cases where the human localization is closer to the Japanese.

________________________________________________

Why only 7,909 lines?

The WonderSwan script is considerably larger than the common paired set:

Version Lines/strings Different texts
Japanese WonderSwan / v0.9.1 14,906 11,417
Human GBA 12,661 11,470
Human PSP 14,434 12,181
Present in all four 7,909 7,522

Claude's analysis found that the main loss happens between the WonderSwan and GBA scripts, not between GBA and PSP.

There are 8,012 v0.9.1 lines paired with Human GBA, and only 103 of those are then missing in Human PSP.

So the small common set is not mainly the result of PSP diverging from GBA.

There are several reasons.

1. The human localizations come from a later version of the Japanese script

The GBA version revised and reorganized the original WonderSwan script, and the PSP localization was in turn based on that later material.

That means some differences are not necessarily translation choices at all.

A WonderSwan line may have been:

  • merged;
  • shortened;
  • moved;
  • rewritten;
  • or removed

before the English GBA localization was ever made.

Likewise, the later versions contain material that simply does not exist in the WonderSwan release.

For example, GBA includes additional material such as the Voice Collection and Bonus Chapter, while PSP adds the Abyss dungeon.

Because the Japanese script of the later edition is not part of this dataset, it is impossible to say in every case whether a difference was introduced by the later Japanese revision or by the English localization itself.

This is an important limitation of any WonderSwan-vs-GBA/PSP comparison.

2. A lot of the apparently "missing" WonderSwan lines are duplicates

Claude found 1,791 unpaired v0.9.1 lines whose Japanese text is exactly identical to another line that was paired successfully.

That includes:

  • 1,246 dialogue lines;
  • 515 exploration choices;
  • 26 stage/event names.

So these lines are not actually missing in terms of content.

The later versions often store repeated text fewer times, which means there is no separate GBA/PSP entry to pair with every individual WonderSwan address.

3. Exploration choices and menus are difficult to align automatically

The WonderSwan script contains 2,374 exploration-choice lines, but only 1,239 different texts.

Only 618 different choice texts were automatically paired.

This category contains many short repeated labels such as:

  • Left
  • Rubble
  • Small hole
  • Taste it

These are difficult to align because they occur many times and are arranged differently between versions.

A manual sample showed that several supposedly unpaired choices really do have equivalents in the GBA script.

For example:

  • Rubble → Rubble
  • Small hole → Small Hole
  • How old are you? → How old are you?
  • Got Black Angel Feather! → Acquired Black Feathers!
  • Dungeon → Castle Dungeon

So again, "not automatically paired" does not necessarily mean "not present."

Dialogue is the biggest source of apparent mismatch

The WonderSwan version contains:

  • 10,435 dialogue lines
  • representing 8,172 different dialogue texts

Of those, the automatic alignment paired:

  • 5,725 dialogue lines
  • representing 5,447 different texts

That means only about 67% of the unique dialogue text was automatically paired.

But Claude manually checked a random sample of 30 unpaired dialogue texts.

The result was:

Result Texts
Clear counterpart, but rewritten too freely for automatic matching 15
Possible counterpart 4
No counterpart found 11

Some examples of lines that do have a human counterpart despite failing automatic pairing:

WonderSwan / v0.9.1**:**

Perhaps this is where the sprites once spoke with the gods.

Human GBA:

They may have tried to talk to the gods from here…

WonderSwan / v0.9.1**:**

Ein, open your eyes already!

Human GBA:

Ein, stop deceiving yourself!

WonderSwan / v0.9.1**:**

This needs to be cooked thoroughly! Full power… Hellfire!!

Human GBA:

We have to sterilize it! Oh, I know! Hell Fire!!

These are clearly related dialogue, but simple similarity matching can easily miss them.

From that sample, Claude estimated that the real dialogue overlap is probably around 83–88%, rather than 67%.

Because the sample is small, the wider statistical range is roughly 77–89%.

So the 7,909-line CSV should be understood as a high-confidence shared comparison set, not as evidence that roughly half the games have unrelated scripts.

What ChatGPT found when re-auditing the 7,909 shared lines

ChatGPT then rechecked the common set from scratch, ignoring the previous verdict columns and comparing the Japanese source directly with all three English versions.

One immediate result was that the GBA and PSP translations are even more similar than expected:

  • 7,252 / 7,909 lines are exactly identical;
  • another 377 differ only in punctuation, capitalization, or spacing;
  • only 280 lines contain a substantive GBA-vs-PSP wording difference.

So for the overwhelming majority of the shared material, "Human GBA" and "Human PSP" are effectively the same localization.

Which translation is closest to the Japanese?

For source fidelity, ChatGPT's fresh audit found that v0.9.1 is generally the strongest base.

The human localization is often smoother and more idiomatic English, but there are many cases where it:

  • condenses the Japanese;
  • paraphrases it much more freely;
  • removes an explicit detail;
  • changes the informational content;
  • or reflects a later-version script change rather than the WonderSwan source.

A few examples:

A missing gameplay implication

The Japanese says that the spring water looks like it can be collected.

v0.9.1 preserves that idea.

The human localization reduces it to:

This water looks pure.

The fact that the water appears collectible is lost.

Riviera and Asgard

One Japanese line asks whether both Riviera and Asgard can be saved.

The human localization mentions only Riviera.

A condition becomes unrelated dialogue

A Japanese line says that the party cannot proceed unless the enemy is defeated.

The human localization instead says:

Hey, look!

That is not merely a stylistic rewrite; the informational content has changed.

Three fangs

Another Japanese line explicitly says that the number of fangs has decreased from three.

The human localization becomes:

We're almost there...

Again, the concrete source detail disappears.

But v0.9.1 is not automatically correct

The audit also found 10 confirmed cases where v0.9.1 itself loses a meaningful Japanese detail and the human GBA/PSP wording is closer to the source.

So the conclusion is not:

AI translation good, human translation bad.

The more useful conclusion is that the two sources have different strengths.

v0.9.1 generally preserves source semantics more closely, while the human localization is valuable for:

  • polished English;
  • established terminology;
  • character voice;
  • item names;
  • skill names;
  • and localization consistency.

GBA vs. PSP

The PSP script should not automatically be treated as the definitive human version either.

It does correct or restore some terminology compared with GBA.

Examples include:

  • ガトリングシュート → Gatling Shot instead of GBA Barrage
  • イモータルペイン → Immortal Pain instead of Deity Bane
  • アッパークロー → Upper Claw instead of High Claw
  • ペイン → Pain instead of Bane

But PSP also contains apparent regressions.

One entry is truncated to simply:

counts

despite the corresponding text describing an accuracy-related effect.

In another case, the Japanese says that Ein still has not remembered Fia's name, while the PSP wording reverses the meaning and says that he did remember it.

There are also places where the later scripts contain much more dialogue than the corresponding WonderSwan entry, which is another reminder that these versions are not always aligned 1:1.

Summary

Signal Rows Share Interpretation
Equivalent 1,219 15.41% No meaningful source-fidelity choice detectable from the text.
v0.9.1 — confirmed 18 0.23% Directly reviewed cases where v0.9.1 is closer to the Japanese source.
v0.9.1 — strong signal 2,404 30.40% Automated source-preservation signal; requires review before replacement decisions.
Human GBA/PSP — confirmed 10 0.13% Directly reviewed cases where v0.9.1 loses source detail.
Version-dependent 31 0.39% Later-platform adaptation or script divergence; not a clean 1:1 translation comparison.
Review 4,227 53.45% Substantive difference with no automatic winner asserted.

“v0.9.1 (strong signal)” does not mean that “v0.9.1 is definitely better.” It is an automatic triage category that ChatGPT used in the audit to identify lines where there are fairly strong indications that v0.9.1 preserves the Japanese content better than the GBA/PSP localization.

In practice, a line was marked as strong signal when there were indicators such as:

  • v0.9.1 preserving information that appears to be heavily condensed in the human translation;
  • negations, conditions, quantities, references, or other details being present in the Japanese and seemingly preserved in v0.9.1, but absent from the human version;
  • GBA/PSP being much shorter or appearing to be a freer rewrite;
  • the wording of v0.9.1 following the informational structure of the original more closely;
  • GBA/PSP appearing to contain an adaptation of the later version rather than a 1:1 translation of the WonderSwan line.

The important distinction is:

v0.9.1
= a case that was semantically checked and where the judgment was confirmed.

v0.9.1 (strong signal)
= the automatic analysis says “this line shows strong signs that v0.9.1 may be better; review it”, but it was not necessarily checked manually word by word against the Japanese.

Review
= there is a substantial difference, but the automatic indicators are not strong enough to suggest a winner.

Platform-specific differences also matter

Some differences should not be counted as translation errors at all.

For example, the WonderSwan version can explicitly refer to the X4 button, while GBA/PSP naturally rewrite the instruction around their own controls.

That is a platform adaptation, not a mistranslation.

The same caution applies to menus, stage structure, exploration choices, and material added or reorganized in later releases.

Report & Audit

The full Claude alignment report and the ChatGPT translation audit contain the detailed counts, pairing methodology, examples, and flagged lines.

You could download here (Translation audit) and here (report on shared lines)

Copyright and research notice

Riviera: The Promised Land and its original Japanese script, official English localizations, characters, and other game assets remain the property of their respective rights holders.

This independent comparison is presented for translation criticism, research, and discussion. Short excerpts from the games are included only where necessary to illustrate specific linguistic differences. The analysis does not reproduce the complete scripts and is not affiliated with or endorsed by the rights holders.


r/WonderSwan • • 9d ago

Guilty Gear Petit 2 English Translation v0.1 Released! (WonderSwan Color)

14 Upvotes

For your pleasure, an English translation for Guilty Gear Petit 2 on WonderSwan Color!

This release includes English story dialogue, tutorials, results, battle captions and move lists. It also improves menu wording while keeping the original font characters when possible.

Project homepage and screenshots

Download v0.1 ZIP

The ZIP is about 584 KiB and includes:

  • A BPS translation patch.
  • An offline Japanese/English screenshot gallery—extract the ZIP and open index.html.
  • Bilingual CSV/XML files for reviewing the translation.
  • Installation instructions, localization notes and validation details.

No ROM is included. You’ll need to dump your own Japanese cartridge and apply the patch to a matching dump. The release notes include the required checksums.

This is a first release, and feedback is welcome! I was able to navigate the starting menu screens and complete a Story run with Sol. Independent Japanese-language review and complete playthrough testing are still open. If you spot awkward wording, clipped text or gameplay issues, please report the character, scene, reproduction steps and emulator or hardware setup. Screenshots are especially helpful.

Enjoy and let me know how it plays on your WonderSwan!


r/WonderSwan • • 9d ago

Does the Gamebank Retro Dumper also write to repro carts?

7 Upvotes

I have one repro cartridge and was just curious if this cart dumper can also write to the repro cart.

Thanks!


r/WonderSwan • • 10d ago

All of these churned out AI translations has made me want to stop the project I've been working on for over a year.

86 Upvotes

I have been working on translating a Wonderswan game that I really like and have been learning how to go through the code and cross referencing with several sources to work on it. All these AI translations being shat out has really disheartened me in my work.

I initially went to school for Japanese before pivoting to something else and playing Japanese games and consuming other Japanese media has been the way I have helped to stop my Japanese from being rusty. This translation project was going to be my way to really get my Japanese back up to snuff as well as strengthen and learn other skills.

Seeing all the low effort patches just being slopped out in the span of a week or two has just killed my moral. It is sadly the same in space for all platforms it seems right now. And since the space does seem to be full of people jumping to AI to be "first" I don't know if I would even want to share the work I have done so far because, it could just lead to someone feeding it into AI to get another patch out there fast.

I am just saddened to see a space I watched with genuine excitement to see the hard work of others turn into another space for AI slop.


r/WonderSwan • • 10d ago

Getting Into Wonderswan

2 Upvotes

Hiya folks, I’ve always been vaguely aware of the Wonderswan family of systems but never really thought about it. But it’s stuck in my brain now. It’s wild that it never left Japan considering how many neat features and games it had. I’m thinking about getting into it. I’d like to get one and a flash cart so I can run English patched games

My question is, has anyone translated the operating system? That might be worded poorly. What I mean is, I saw that it asks for your name, birthday, etc. I think this is kinda cute. It reminds me of the DS and I’d like to have the full experience. So has anyone found a way to translate those prompts?


r/WonderSwan • • 10d ago

Super Robot Wars Compact translation update

Thumbnail gallery
4 Upvotes

r/WonderSwan • • 11d ago

Wonderswan MSVS Personal Project From Monochrome to color

10 Upvotes

After I had cleaned up Mobile Suit Gundam MSVS, I thought it would be fun to push the tech to the next level and machine format the game to Wonderswan Color! From there I had worked a few different attempts to make things work, but was able to finally find the right things. I think this is the next evolution in these projects. The machine did this part but I'm in clip studio now manually editing these pixels hair lines and color correcting them. But yes it's possible to go from Monochrome to color in a day if you know what you're doing. Sorry to be selfish since this isn't a simple translation patch I will not be releasing this, but will show more footage once completed, playing on my physical Wonderswan Color. MSVS working video

Also I plan to add more characters and Mechs just because.


r/WonderSwan • • 12d ago

First progress update on Wonderswan projects

Thumbnail
gallery
15 Upvotes

Hi, everyone!

I wanted to share some of the WonderSwan translation projects I’ve been working on lately. I’m currently publishing these projects on GitHub so that the translation work, source files, documentation, patches, technical findings, and testing information can be available to the community.

There are still other translations currently in progress. However, I decided to start uploading the projects that have already reached a useful stage so that their repositories can also be used as references and resources for the remaining translations.

Some of the tools, methods, documentation, text-handling research, memory-address findings, testing procedures, and other technical work developed for one translation may also help with the development, validation, debugging, and completion of the other WonderSwan translations currently underway.

I’ve noticed that there are many active people in the WonderSwan community, so I also wanted to make this work available in order to receive feedback, report issues, improve translation validation, expand testing, and hopefully make it easier for other people to contribute.

More translations and updates will be published as the remaining projects progress.

Translation repositories

https://github.com/Gand46/Rockman-EXE---N1-Battle-ChipControl-Wonderswan-English-Translation-AI_GPT-

https://github.com/Gand46/BlueWingBlitz-Wonderswan-English-Translation-AI_GPT

https://github.com/Gand46/Densha-de-Go-2-Wonderswan-English-Translation-AI_GPT

https://github.com/Gand46/Front-Mission-Wonderswan-English-Translation-AI_GPT

https://github.com/Gand46/MakaiMura-EEPROM-Wonderswan-English-Translation-AI_GPT-

https://github.com/Gand46/StarHearts-Wonderswan-English-Translation-AI_GPT

https://github.com/Gand46/Riviera-Wonderswan-English-Translation-AI_GPT

Applying the translation patches

For patching, I recommend RomPatcher.js:

https://www.marcrobledo.com/RomPatcher.js/

Testing and reporting translation issues

My own gameplay testing of these translations has generally been focused on shorter validation sessions and specific translation issues rather than complete long-term playthroughs.

If you find translation errors, untranslated text, visual problems, text overflow, font issues, crashes, or other problems, I suggest using:

https://github.com/Gand46/WonderSwan-Mobile-Emulator

When reporting an issue, the PNG screenshot and MSS save-state options can be especially useful. Packaging the screenshot and save state together in a ZIP makes it much easier to reproduce the exact scene, investigate the problem, and prepare a correction.

Feedback, testing, translation review, and contributions are very welcome.