Frequently Asked Questions

They’re not actually asked that frequently, but they might be helpful to know.

What is this?

It’s a integrated development environment (IDE) for old computers and video games. You can write code for 6502 or Z80-based hardware in C, assembler, etc. We emulate the hardware in the browser via JavaScript. The programming tools also run in your browser, and are usually compiled from C to WebAssembly or asm.js via Emscripten. We also support Verilog HDL for hardware design.

What emulators do you use?

System

Emulator

Atari 2600

Javatari (fork)

NES

JSNES (fork)

C64/ZX

chips (fork)

Verilog

Verilator -> WebAssembly

Z-Machine

ifvms.js

Atari 800/5200

MAME

everything else

native TypeScript/JavaScript

We integrate a MAME emulator for a couple of platforms, but debugging doesn’t work. The native TypeScript platforms generally have the best debugging support.

What programming tools do you support?

System

Emulator

Atari 2600

DASM, batariBASIC*

NES

DASM, ca65, cc65, nesasm3*

6502 platforms

DASM, ca65, cc65, Wiz*

Z80 platforms

sdcc, zmac*

6809 platforms

xasm6809*

Verilog

Verilator, Silice

* not very well supported

When are you adding X system?

Hopefully, eventually! We like platforms that:

  • Can be emulated in a browser (6502, Z80 especially) and have existing JS/WASM emulators available

  • Have existing dev tools that can be compiled via Emscripten or otherwise run inside the browser

  • Don’t depend on copyrighted BIOS files (we use open-source BIOS for some platforms)

  • Have a community waiting to pounce, or are especially interesting/historic

We like to have a good set of example files for each supported platform, and a comprehesive C support library if applicable. This is often the hard part.

How can I contribute?

Really, the best way is just by using it and publishing your projects on GitHub, and spreading the word!

Comments