Talking word cards in a day: how an AI fit 1999 English words, and their spoken examples, onto an SFC cartridge
This time the subject is an educational game: word cards for children under 12 who are learning English. Start the game and take on 30 cards. Each card shows a word and says it; the child answers “I know it” or “not yet”, and the card turns over to show the meaning and an example sentence.
The result is an 8 MB Super Famicom cartridge with 1999 words. Each has a pronunciation (KK phonetic symbols), part of speech, meaning, example sentence and translation, and both the word and the sentence are read aloud. From the first request to a playable game, the AI worked for about 100 minutes, about US$29 at API prices.
How it plays


- Front: the word and its pronunciation, read aloud. A or → for “I know it”, B or ← for “not yet”, X to hear it again.
- Back: part of speech, meaning, example sentence and translation; the sentence is read aloud. X says the word, Y the sentence, A goes on.
- Result: how many were known, how many not yet, and the words to learn again.
It is deliberately not a test: no multiple choice and no timer. The child decides whether they know the word, then turns the card to check. The front has only the word and its sound, so the child tries to recall the meaning first; the back gives the answer. Example sentences are at most 9 words, in simple patterns.
What we told the AI
We made the game with Claude Code (Claude Opus 5.5). These are the requests (lightly edited; translated from Chinese). Nobody wrote any code.
Make an English word-card game for primary-school children: start it and take a word-card challenge of 30 words, answering just with A or B (or left / right) for "I know it" / "not yet", like real word cards. First prepare 2000 English words that children commonly need to know when they finish primary school, with an example sentence for each. And can the words have KK phonetic symbols?
The AI prepared the word list first, then proposed how the game would work (screens, font, controls). The user answered “OK”. About 35 minutes after the first request, the first version was playable. After trying it, the user asked:
Works nicely! Can it also say the words, and read the sentences?
Where the material came from
An educational game has to be correct, so for each piece we first settled where it comes from and whether we may use it:
| Material | Source | How |
|---|---|---|
| 2000-word list | A published English curriculum’s appendix (2000 basic words) | The AI extracted the text from the PDF with macOS PDFKit and parsed 1999 entries, keeping 37 topic groups |
| Pronunciations | CMU Pronouncing Dictionary (BSD-2-Clause) | Converted to KK symbols by a program; the AI did not write them itself, because it misremembers. Words with several readings get the one that fits the card’s meaning: read [rid], live [lɪv], wind [wɪnd] |
| Meanings, examples, levels | Written by AI | 8 sub-agents in parallel, 3 minutes, then a few fixes by hand. Have a teacher spot-check them before children use them |
| Font | Cubic 11 pixel font (SIL OFL) | Rasterised 1:1 from the outlines. The 17 phonetic symbols the font lacks were drawn by the AI in its style |
| Background | Drawn by a program | Card, shadow and bands, in 30 tiles |
| Voice | Kokoro-82M (Apache-2.0), run locally | 1999 words and 1999 sentences, three processes for about 50 minutes. Not the computer’s built-in voices: their licence allows personal, non-commercial use only |
Where the voice and the card disagreed: a text-to-speech engine has its own idea of how to read a word, and for 12 words it differed from the card: live as [laɪv], close as [klos], record as the noun. The AI compared the two for every word and had these 12 read from phonetic input, so the child hears what the card shows.
Getting past the 8 MB limit
Once every recording was measured, the problem was clear:
| Length | Space on the cartridge | |
|---|---|---|
| 1999 words | about 21 minutes | about 6.5 MB (9.5 kHz) |
| 1999 sentences | about 47 minutes | at least 25 MB more |
The SFC’s CPU addresses 16 MB, and half of that belongs to RAM and hardware registers, so a cartridge can be read directly up to about 8 MB (the ExHiROM layout). The largest cartridges ever sold were 6 MB. The words fit; the sentences don’t.
We weighed three ways:
- A bank-switching cartridge beyond 8 MB. The cartridge needs a circuit that selects which part the program sees. There is no common standard for it, so neither real consoles nor flash carts could run it: a format of our own.
- MSU-1. An extension that flash carts support: a separate data file that the game reads byte by byte. It works, but the file would be 25 MB and the sound only 16 kHz.
- The HD pack (the user’s idea). The player can already use an HD pack to replace the game’s pictures with high-resolution images. Why not sounds?
We took the third:
- The cartridge holds a cue: for each sentence, an 18-byte, practically silent sample, a different one each time.
- The pack holds the content: keyed by the hash of that cue, the recording of the sentence (MP3, 24 kHz).
- The player connects them: whenever the game has the sound chip play a sample, the player hashes it. If the pack has that key, the pack’s recording plays instead, through the game’s pitch, envelope and volume, for the recording’s own length. So an 18-byte cue becomes a 3-second sentence.
The ROM is still an 8 MB cartridge that runs on real hardware, with every word in it. Add the 23 MB pack, and the sentences are read too, and the words become clearer 24 kHz recordings. Without the pack, the sentences are silent and everything else works.
The idea goes beyond speech. The game gives a cue; the pack supplies rich content. The same mechanism can show a picture or photo for each word (replacing tiles) or play recorded music (the game plays a cue sample when a piece starts). HD sounds are a general player feature that works for any game; see let an AI make a game look sharper on the home page.
What it cost
| User messages | about 10: the request, approving the plan, adding speech, choosing the approach, reporting problems; no code |
| AI working time | about 100 minutes: data and game 34, speech and fixes 66 |
| Local computing | reading aloud, about 50 minutes (CPU of an M-series Mac; no GPU, no cloud) |
| Model | Claude Opus 5.5, the main session plus 8 sub-agents, 269 replies |
| AI output tokens | 444,000 |
| Tokens processed | about 70 million (mostly cache reads) |
| Estimated cost | about US$29 (at Anthropic API prices, November 2026; subscriptions are billed differently) |
| Anything else | nothing: the word list, dictionary, font and voice model are public or openly licensed |
Nearly half of that is cache reads: this conversation followed other work the same day, so every call carried a long context. In a fresh session it would cost less.
For teachers and parents
- The meanings, examples and levels were written by AI. We checked format and length and fixed a few, but please spot-check them before children use them.
- The cards use KK symbols (American pronunciation). Switching to IPA means changing the converter and a few glyphs.
- The meanings and menus are in Traditional Chinese. All text comes from the layout program, so another language is a matter of swapping the text.
- The spoken sentences need the aixsfc player with the pack. Real consoles and other players read the words only.
To make your own game with AI, run npx https://aixsfc.app/skill/aixsfc.tgz in an empty folder and start claude;
see the home page.
Sources and licences
- Word list: the 2000 basic words in an English curriculum’s appendix (a public document).
- Pronunciations: CMU Pronouncing Dictionary, BSD-2-Clause.
- Font: Cubic 11, ACh-K, SIL Open Font License 1.1.
- Voice: Kokoro-82M (hexgrad), Apache-2.0.
- Code, phonetic glyphs, background: made from scratch for this game. Not affiliated with or endorsed by Nintendo.