Capybara
Bare-metal emulator · Sonix SNC73410

Capybara

The real factory firmware of your Tamagotchi Paradise, on your computer. Not a reimplementation of the game: an ARMv7-M core written from scratch in Rust, with the undocumented SNC73410 peripherals modelled from measurement.

A
B
C
TFT 128 × 128 RGB565 · molette · 3 boutons
MCU
Sonix SNC73410dual core Cortex-M3
Flash
16 Moquad SPI, encrypted
Speed
Faster than the consoleheld to real time
License
GPL v3open source
GET

Download

Pick your system. The packages are built by the repository's own publishing pipeline, from code you can read.

Download for Windowscapybara · zip · 64 bits
  1. Unzip it wherever you like. Nothing is installed.
  2. Run capybara.exe. Windows may warn that the publisher is unknown: the executable is not signed with a commercial certificate.

64-bit Windows. Your games go in %APPDATA%\Capybara\data, never next to the program.

Download for macOScapybara · zip · arm64
  1. Open the archive and drag Capybara into Applications.
  2. The app is not signed with an Apple certificate, so macOS refuses the first launch. Clear the quarantine flag once: xattr -dr com.apple.quarantine /Applications/Capybara.app
  3. Open Capybara from Launchpad. macOS asks nothing after that.

Apple Silicon. On an Intel Mac, build from source. Your games go in ~/Library/Application Support/Capybara.

Download the AppImagecapybara · AppImage · x86_64 Download the Debian packagecapybara · deb · amd64
  1. For the AppImage, make the file executable and run it: chmod +x capybara-*.AppImage && ./capybara-*.AppImage
  2. For the Debian package: sudo dpkg -i capybara-*.deb

x86_64. Your games go in ~/.local/share/capybara.

You need your own console.

Capybara ships no game data, and never will. You supply a flash dump of your own console, 16 MB, read from its memory chip. The dump is encrypted, but you have nothing else to find: Capybara works out its key from the dump itself, in about a minute, and nothing of that key is written into the software. That is the only honest and lawful way to use it: you emulate the machine you already own.

Tamagotchi Paradise is a product still on sale, not an abandoned one. Nothing here replaces buying it, and nothing here lets you play without it: you must physically own a console, open it, and read its own memory. What Capybara gives back is what you already paid for, on a screen that does not run on a coin cell. That is the honest line, and the project holds it even where it makes the software harder to start using.

WHAT

What it does

Playing

Three buttons and a dial, from keyboard or mouse. Held keys combine, which is how you revive a character. Everything remaps, and the mapping is remembered.

Saves

One slot per game, kept per dump. A new game leaves the previous one untouched. The clock keeps running with the window closed, like a real device left in a drawer.

Recovery points

The whole machine frozen, core and peripherals included. One point every minute, kept twelve hours, rewinding to the second.

Appearance

The shell takes your own images, with a cut-out mask that replaces the silhouette. Colours, opacity, depth, shadows, layer rotation, button size and spacing.

Serial link

The console's UART is modelled, with a bridge to a port on your computer at 460800 baud. Pair it with a virtual serial port tool and the transfer software talks to your console as if it were plugged in.

Browser view

A local server publishes the screen and accepts the controls. The console can be watched and played from a phone on the same network.

STATE

Where it stands

What runs, and what is still open. The page says it rather than hiding it.

AreaState
ARMv7-M core, Thumb-2complete
128 × 128 RGB565 displaycomplete
Buttons, dial, sleep and wakecomplete
Clock, calendar, ageingcomplete
Saves and recovery pointscomplete
Soundcomplete
Serial linkcomplete
EditionsLand, Water, Sky and Jade Forest tested; White Glacier and Orange Tropical untested

Behind all of this: the pinout, the real memory map, the Sonix load table format, the AES key derivation, and the sixteen ARMv7-M decoding faults found by running real code. Everything was measured on the hardware, nothing was assumed.

SRC

Build it yourself

Nothing obliges you to trust a binary. The code is open and building takes one line.

git clone https://github.com/infinition/capybara && cd capybara && cargo build --release

The binary lands in target/release/capybara. The reverse engineering probes live in examples/ and stay in the repository, because the work continues.