# The emulator in the page `atari800.js` / `atari800.wasm` are Atari800 (https://github.com/atari800/atari800, GPL-2.0-or-later, commit 98cc2dc) built as `libatari800` with Emscripten 6.0.13, plus `web.c` from this folder. The built-in AltirraOS is used, so no Atari ROM is needed. Files here: `atari800-98cc2dc.tar.gz` (the exact Atari800 source, unchanged), `web.c` (the glue between the library and the page) and these notes. tar xzf atari800-98cc2dc.tar.gz && mv atari800-98cc2dc src && cd src # or: git clone https://github.com/atari800/atari800 src && cd src && git checkout 98cc2dc ./autogen.sh emconfigure ./configure --target=libatari800 --disable-monitorasm --without-readline \ --disable-netsio --disable-videorecording --disable-pngcodec --disable-zmbvcodec \ --disable-ide --disable-pbi_mio --disable-pbi_bb --disable-pbi_xld --disable-riodevice emmake make CFLAGS="-O2 -Wno-macro-redefined" emcc -O2 web.c src/libatari800.a -Isrc/libatari800 -o atari800.js -sMODULARIZE=1 \ -sEXPORT_NAME=Atari800 -sALLOW_MEMORY_GROWTH=1 -sFORCE_FILESYSTEM=1 \ -sEXPORTED_RUNTIME_METHODS='["FS","HEAPU8","HEAPU32","ccall","cwrap"]' -sENVIRONMENT=web,node