CRYSTALWORLDS.MEDIA
Loading photo archive…
Connecting…
Movies · Shows · Real running retro games

#1 emulators in the world
on nine systems drawn in
Liquid Crystal.

  • Movies
  • Shows
  • Game & Watch
  • Mario Bros.
  • Legend of Zelda
  • Tetris Jr.
  • Game Boy
  • Game Boy Color
  • Pokémon mini
  • NES
  • Famicom
  • Disk System
  • Atari 2600
  • Atari 5200
  • Atari 7800
  • Atari Lynx

Writing a Game Boy emulator from nothing, with the picture unit modelled dot by dot, is hard. Ours passes all 24 mealybug tests: pictures that must match photographs of the real hardware, pixel for pixel. It passes Mooneye, 97 of 97, and Blargg, 51 of 51, and ranks #1 on the public Game Boy accuracy board, level with DocBoy. On the two newer Color suites, cgb-acid-hell and the AGE tests, it scores ahead of every other emulator we measured. It runs many licensed and unlicensed cartridge chips, the Super Game Boy, the Pocket Camera, and nearly every Game Boy and Color game we tested.

Then we ran the hardest test there is: deterministic synthesis from documentation alone. A builder who had never seen our code was given our pages and nothing else, and built a Game Boy emulator from them. Its output was identical to ours on 170 of 170 tests, every mealybug and AGE test among them. When documentation is precise enough that the machine can be rebuilt from the words alone, the documentation is the blueprint.

We then did the same on many more systems. Every result, dated, with the fingerprint of the exact file this site serves, is below under Checked by rebuilding.

The little game tiles scattered through your library are not screenshots or GIFs. They are the actual games, running live, with the demo loops attracting you in exactly like they did on a shop shelf in 1991. Walk past them in your movie collection and they are playing.

64
Game & Watch systems
#1
Game Boy doc sheets
 
Days since we started
1st
ARM Game & Watch emulator
11
Hand-rolled emulators, 14 consoles
The proof

11 emulators, one home server

Every emulator here is fed by one small server that is yours, running on your own computer. Point it at your game library and that is the whole setup: no emulator cores to install, no paths, no launch commands, no scraper accounts. It recognises every cartridge by its fingerprint and picks the right start-up firmware for it. Box art, logos and manuals arrive on their own, with no scraping and no daily limits. Plug in a controller and it just works, with A where your controller says A. At home it serves the whole collection to every screen in the house, and your games keep playing even locally with no internet. Away from home, your vault code brings the same collection to you anywhere online.

Secure. Versatile. Simple.

From the silicon up

We build these ourselves. From nothing.

Most emulators are handed down. Someone reverse-engineers a machine once, and everyone else spends twenty years patching, porting, and inheriting every shortcut from that original code.

That is not what we do here.

We do not research these machines to build them. We build them to research them.

This is a preservation project first and foremost. Reconstructing a system from nothing is the ultimate form of hardware study because every chip must be fully understood before it can be rebuilt, with no prior work to fall back on. When you build from scratch, you truly understand the machine instead of trusting decades-old assumptions.

That philosophy produced the world's first emulator for the modern ARM Game & Watch, covering the Zelda and Mario twins running on the STM32H7. With no existing code to copy or core to fork, we reverse-engineered the hardware and built it from the silicon up, executing the real internal firmware directly in the browser.

We are bringing that same standard to how retro media is experienced. Emulation today remains fragmented, tied to legacy builds, complex setups, and fragile workarounds. We are creating a single home for games and media together that simply works on any modern device with zero setup. Achieving that seamless experience requires hand-rolled, clean emulators rather than decades of stitched-together patches.

What we learn along the way does not stay buried in code. We write documentation precise enough that someone can build a working emulator from our words alone. We proved this approach by writing a complete Game Boy specification covering all 24 mealybug edge-case tests, then building an emulator solely from those words with no source code or external references. It compiled and passed every test on the first attempt. We have done the same for many more systems since, each one listed in the table below.

The emulator itself serves as the ultimate test of accuracy, where any flaw in our hardware understanding or documentation is immediately exposed by the software.

Preservation

Why it matters

Every one of these machines belongs to all of us. A Game & Watch went into pockets in Osaka and in Manchester in the same few years. A Game Boy ate a fortune in AA batteries under the covers in bedrooms on every continent. A prototype almost nobody ever saw still shaped the machine that came after it. These games, and the films and shows sitting beside them, are how most of the world actually spent its evenings for forty years. That is shared culture, not private nostalgia. And it is disappearing, into landfill, into dead hard drives, into knowledge that leaves with the people who held it.

Preserving it properly means more than making it run. It means writing down exactly how these machines think, so precisely that anyone can rebuild them perfectly, forever. Not a copy of a copy of someone's old code, but a true tested blueprint. That is the difference between hoping it survives and making sure it does.

Hardware Lineage

Nearly fifty years of play, on a single thread.

Every console on this site, handheld and home, laid out in the order it really arrived, from the Atari VCS in 1977 onwards: the four Ataris, the Game & Watch series, the Famicom, the NES and the Disk System, the Game Boy, the Game Boy Color and the Pokémon mini. The families overlap and cut across one another, because that is how the hardware actually happened. Tap any entry to drop into its catalogue.

About

The machines, in our words

CrystalWorlds.Media is a love letter to the machines that taught the world to play. It began as a home for one family, the small, strange Game & Watch handhelds Nintendo built between 1980 and 1991, and it has grown into a shelf of handhelds and home consoles, your own films and shows. Every emulator here was written from scratch by us, standing proudly on the shoulders of the community, researchers, and pioneer engineers who painfully mapped these systems before us. It is all brought to life right inside your browser.

It began with the first Game & Watch, Ball, which slipped out of Japan on April 9th, 1980. It cost a few thousand yen, ran on watch batteries, and let you keep a juggler from dropping two stiff little balls. It sold a million copies. By the time the line ended in 1991, Nintendo had shipped fifty-nine different models across ten distinct hardware series, and posted somewhere north of forty-three million units sold worldwide.

"Lateral thinking with withered technology." That was Gunpei Yokoi's design philosophy: take old, cheap, well-understood parts; find a brand-new use for them.

The man behind the magic.

Gunpei Yokoi joined Nintendo in 1965 as a maintenance engineer. He went on to lead the R&D1 group responsible for the Game & Watch, the Game Boy, and Metroid. The story goes that he watched a bored salaryman on a Shinkansen passing time by tapping the buttons of a calculator, and wondered if you could put a tiny game in the same pocket-sized shell. The Game & Watch is what came out the other side.

Yokoi left Nintendo in 1996 and his fingerprints are still on every handheld Nintendo ships, and on most of the machines on this page.

One client. Every screen.

All of it is fed by one small server that sits on your own computer. Point it at your library, and that is the whole setup: it recognises every cartridge by its fingerprint, picks the right start-up firmware, and maps your controller the instant it is plugged in. At home, it serves your entire collection to every screen in the house. Away from home, your vault code brings that same collection to you anywhere.

Built from nothing.

Most emulators are handed down: someone reverse-engineers a machine once, and everyone else inherits every shortcut and quirk from that original code. That is not what we do here. We do not research these machines to build them. We build them to research them.

Every core on this site was written from the chip makers' own documentation and from direct measurement of real hardware, with nothing copied from an existing emulator. The documentation we write along the way is precise enough that a second core, built solely from our words with no source code, passed every test on the first attempt. Where a public test exists, we publish our score beside everyone else's, complete with the date it was measured; where none exists, we write our own test cartridges, run them on real hardware, and show the results.

Suggestions and submissions.

Suggestions and submissions are welcome from anyone, on the project's GitHub page: a bug report, a fix, a correction to a Hardware or Emulation page, a measurement from real hardware, a game that does not play right, or an idea. Every submission is read and considered.

Games and firmware are never accepted. A submission that contains a game, a BIOS, a boot program or any other console firmware, or a link to one, is always rejected, whatever else it contains. This site plays only the files you already own, and it never ships, hosts or shares them.

Acknowledgements.

This site is built on the work of a lot of people, and it owes them thanks.

Many thanks to everyone who came before us

The machines

Consoles and handhelds

Nintendo

The late Gunpei Yokoi and the R&D1 team

who made the machines that started this, and most of the ones that followed

Consoles and handhelds

Atari, with Epyx on the Lynx

who made the others

Chip manuals

Epson, Sharp and STMicroelectronics

for the chip manuals our cores were written from

Atari 7800 design

General Computer Corporation

for designing the 7800 and writing its first software guide

Everything here is a tribute to them.

Game & Watch emulation

Our own core for the Sharp SM5A, SM510, SM511 and SM512, built from

Sharp's original SM-series data books

Chip decapping and die photography

Sean Riddle

Chip decapping, die photography and the firmware dumps these emulators run; die-level pinouts that confirmed much of the detail in our Hardware tabs, and corrected our supply-rail labels

Documenting these chips

hap

Henrik Algestam

The game firmware, recovered from real silicon

The hardware preservationists

Igor, Lee Robson and Milan Galcik

for their part in documenting these chips

And the earlier open-source device work on these chips that the Hardware tabs draw on.

Game & Watch artwork

Vector LCD layouts, refined across the whole line

hydef

Colour backgrounds and Crystal Screen button art

DarthMarino

Unit art and printed backgrounds

The Game & Watch artwork community

Unit art, printed backgrounds, and everyone who contributed on the community artwork thread

Background scans

Henrik Algestam and Sean Riddle

for background scans

Pinball scan alignment

ICEknight

for the scan alignment on Pinball

Device photographs

Madrigal Design

for the device photographs

The 35th-anniversary units

The Mario and Zelda colour handhelds, on a hand-built ARM digital twin, from

Community notes on this board

ST's own notes on how the STM32 decrypts its code as it runs

The tests every emulator is measured against

Game Boy

Test suites

mealybug tearoom

Mooneye

Blargg

Mooneye Test Suite

Joonas Javanainen (Gekkio)

for the Mooneye Test Suite

Mealybug Tearoom tests

Matt Currie

for the Mealybug Tearoom tests, dmg-acid2, cgb-acid2 and cgb-acid-hell

Test cartridges

Docheinstein

for the docboy test cartridges

Test programs

aappleby

for gbmicrotest

Test programs

Christoph Sprenger

for his Game Boy and Game Boy Color test programs

Test suite

Lior Halphon (LIJI32)

for SameSuite

Test shootout and tests

daid

for the Game Boy test shootout and his own tests

Test programs

Ashiepaws

for Bully and Strikethrough

Cartridge clock and Super Game Boy tests

CasualPokePlayer

for the cartridge clock and Super Game Boy tests

Cartridge clock test

ax6

for rtc3test

Test tool

Rob Heaton

for Gameboy Doctor

Test programs

magen, little-things-gb and zoomten

for their test programs

NES

Test suite

AccuracyCoin

AccuracyCoin

Chris Siebert (100thCoin)

for AccuracyCoin

Processor, picture, sound and mapper tests

Blargg (Shay Green)

for most of the NES processor, picture, sound and mapper tests

Processor test and log

Kevin Horton (kevtris)

for nestest and its log

Test collection

Christopher Pow

for gathering the NES test collection

Test programs

Damian Yerrick (tepples)

for Holy Mapperel, Zap Ruder, the 240p Test Suite on NES and Game Boy, and many more

Processor tests

Joel Yliluoma (Bisqwit)

for his processor tests

Test programs

Aaron Bottegal, Mathew Brenaman, Tennessee Carmel-Veilleux, Michael Martin, Chris Covell, loopy, Bregalad, Myask and thefox

for test programs shared on the NESdev forum, with everyone else who shared one there

Atari Lynx

Test suite

The Lynx test suite, its answers recorded on real consoles

Lynx test suite

Ignacio Sanchez Gines (drhelius)

for the Lynx test suite

Atari 2600, 5200 and 7800

Test program

Avery Lee (phaeron)

for Acid5200

Processor tests

Klaus Dormann

for the 6502 and 65C02 functional tests

Processor tests

Tom Harte and contributors

for the cycle-by-cycle 6502 and 65C02 tests

Example programs

Steven Hugg, with Daniel Boris

for the 2600 and 5200 example programs

7800 samples and BIOS

Mike Saarna (RevEng) and the 7800-devtools authors

for the 7800basic samples and 7800OpenBIOS

Demo program

Darrell Spice Jr. (SpiceWare)

for the DPC+ demo

Documentation

Game Boy reference

Pan Docs, the gbdev wiki and their contributors

for the Game Boy reference

Technical reference and hardware database

Joonas Javanainen (Gekkio)

for Game Boy: Complete Technical Reference and the Game Boy hardware database

Game Boy timing reference

Antonio Nino Diaz

for the Cycle-Accurate Game Boy Docs

Opcode table

izik1

for the gbops opcode table

Cycle timing and bankswitching

Kevin Horton (kevtris)

for Nitty Gritty Gameboy Cycle Timing and the 2600 bankswitching list

Game Boy window measurements

nitro2k01, tbsp and alyosha-tas

for their Game Boy window measurements

Game Boy processor logs

wheremyfoodat

for the Game Boy processor logs

NES and Famicom reference

The NESdev wiki and forum community

for the NES and Famicom reference

Transistor-level chip research

Quietust, and the Visual 6502 and Visual 2C02 teams

for transistor-level research into the NES chips

Measurements and research

lidnariq, rainwarrior, loopy, AWJ, Persune, plgDavid, furrtek, krzysiobal, FirebrandX, NewRisingSun, CaH4e3 and Disch

for their measurements and research on the NESdev forum

Study Box hardware notes

The author of the 2019 Study Box notes

for the hardware notes behind our Study Box support

Atari 2600 programmer's guide

Steve Wright

for Atari's 1979 programmer's guide to the 2600

2600 specifications

Martin Korth (nocash)

for his 2600 specifications

TIA hardware notes

Andrew Towers

for his TIA hardware notes

Atari hardware reference

Avery Lee (phaeron)

for his Atari hardware reference manual

Atari notes, guides and forums

A.N.A.L.O.G. Computing, De Re Atari, the 7800 homebrew community, ConsoleMods, the cc65 team, Ian Farquhar and AtariAge

for Atari notes, guides, archives and forums

Prototype histories

AtariProtos and Atarimania

for prototype and test-cartridge histories

Pokémon mini documentation

pokemon-mini.net, Team Pokeme, logicplace, shonumi, RetroReversing and Data Crystal

for the Pokémon mini documentation

Architecture and history

Rodrigo Copetti, Wikipedia and Chromagi

for architecture write-ups, history and power ratings

Data

Game names

No-Intro

for the game names

Game details and cheat codes

The libretro-database contributors

for game details and cheat codes, under CC BY-SA 4.0

Descriptions and release dates

OpenVGDB

for descriptions and release dates

Players' ratings and descriptions

LaunchBox Games Database

for players' ratings and game descriptions

Critics' scores

Wikidata

for critics' scores

NES cartridge databases

NewRisingSun and BootGod

for the NES 2.0 header database and NesCartDB, with the other NES cartridge database compilers

Boot colour tables

Tauwasser

for the Game Boy Color boot colour tables

Palette chip dumps

The arcade preservation community

for the VS System palette chip dumps

Controller layouts

mdqinc and the SDL_GameControllerDB contributors

for controller layouts

Artwork and photographs

R.O.B. 3D model

Wrld_Bld

for the R.O.B. 3D model, under CC BY 4.0

R.O.B. part measurements

archonik

for the R.O.B. part measurements

Reference photographs

Evan-Amos, Sintegrity, Chapuisat, Phil Bond and Solomon203

for reference photographs of R.O.B. and the Game Boy Color

Box-art scans

The libretro-thumbnails contributors

for box-art scans

Software

Video playback and conversion

The FFmpeg developers, and Yahweasel

for FFmpeg and libav.js, which play and convert video

Video container library

Vanilagy

for mediabunny

MP2 audio decoder

Dominic Szablewski, after Martin J. Fiedler

for the MP2 audio decoder

3D viewer

The three.js authors

for the 3D viewer

Manual page turner

Nodlik (Oleg Litovski)

for StPageFlip, the manual page turner

PDF viewer

Mozilla

for pdf.js

Streaming playback

The hls.js authors

for streaming playback

Special thanks

To everyone who sponsors this project.

Your support made it possible.

Decades of unpaid, meticulous preservation and emulation work sit underneath every device on this site.

Thank you to everyone who did it.

If your work is represented here and you would like it credited differently, do reach out and it will be put right.

Licences.

Click here to expand

This site's own code, writing and interface art are under a single licence, the CrystalWorlds.Media Project Licence 1.1. In short: you may change it, you may not sever it. Use it, modify it and share it freely for non-commercial purposes, as a whole and with credit; taking a piece out on its own (an emulator core, a device page, the interface) or using any of it commercially needs permission first. The research and documentation, including the Hardware and Emulation pages and the test write-ups, may be read, cited and quoted in reasonable excerpts with credit, in paid work too, and its facts may be used, with credit, to improve your own projects; it may not be copied in its entirety or in substantial parts, presented as anyone else's own work, or used as the source to build an emulator or a front end (§3A of the licence). The source code is provided so that anyone can check our results, and neither it nor the emulator cores may be used to develop other front-end software (§3B). No AI or other automated system may build software from our documentation or source, or be trained on them, and text and data mining is reserved; repeating our clean-room proof, an AI included, to check our results is allowed (§3C to §3E). The Emulation pages ask you to agree to these terms the first time you open one in a browser. Everything is “please ask” unless the licence says otherwise, and the answer is often yes.

Parts of this site are not ours and are exempt: the FFmpeg video pipeline stays LGPL-2.1-or-later, mediabunny stays MPL-2.0, and the Game & Watch artwork belongs to the people named above. Those licences permit things ours does not, including commercial use, and nothing in our licence restricts them; see §6 of the licence. None of it covers anything Nintendo, Atari, Sharp or any other rights holder owns; see the NOTICE. Every third-party component and its licence is listed in THIRD-PARTY-NOTICES.

The per-device screen and button geometry of the Game & Watch units was read from the fifty-three community layout files that ship as external artwork, the work of Lee Robson (hydef), credited on fifty-two of the fifty-three, with DarthMarino on three and Henrik Algestam and ICEknight alongside them on Pinball. One, Ball, carries no credit line at all. None of the fifty-three carries a licence line of any kind, and there is no licence document anywhere to find: this is free public material, put out openly in a public forum thread. What this site owes the people who made it is credit, and that is what is given: by name, above and here. This site asserts no licence over their work on their behalf.

The Media page decodes and re-encodes with FFmpeg, compiled to WebAssembly by libav.js at version 6.9.9.0 and shipped here as two binaries. FFmpeg's libraries are under the GNU Lesser General Public License, version 2.1 or later, which asks that its text travel with the work, so it does: the full licence text ships in this distribution, next to the binaries it covers. The corresponding source is the FFmpeg 6.9.9.0 release plus the libav.js build scripts at the matching tag, at github.com/Yahweasel/libav.js. The container muxing alongside it is mediabunny (MPL-2.0), redistributed unmodified with its own header intact. See THIRD-PARTY-NOTICES, sections 3 and 4.

Device Name · Game & Watch

Instruction Manual · MODEL · Section