BBC Micro emulator for WebAssembly - https://beeb.webassembly.link
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data Added rom support for bbc b Aug 7, 2018
doc First commit with files from Linux 0.0.13 release. Jun 10, 2018
m4 First commit with files from Linux 0.0.13 release. Jun 10, 2018
src Added rom support for bbc b Aug 7, 2018
.gitignore .gitignore Jun 10, 2018
AUTHORS First commit with files from Linux 0.0.13 release. Jun 10, 2018
COPYING First commit with files from Linux 0.0.13 release. Jun 10, 2018
ChangeLog First commit with files from Linux 0.0.13 release. Jun 10, 2018
INSTALL First commit with files from Linux 0.0.13 release. Jun 10, 2018
Makefile.am First commit with files from Linux 0.0.13 release. Jun 10, 2018
Makefile.in First commit with files from Linux 0.0.13 release. Jun 10, 2018
NEWS First commit with files from Linux 0.0.13 release. Jun 10, 2018
README Map DELETE key to Break Jun 10, 2018
THANKS First commit with files from Linux 0.0.13 release. Jun 10, 2018
aclocal.m4 First commit with files from Linux 0.0.13 release. Jun 10, 2018
config.guess First commit with files from Linux 0.0.13 release. Jun 10, 2018
config.h.in First commit with files from Linux 0.0.13 release. Jun 10, 2018
config.sub First commit with files from Linux 0.0.13 release. Jun 10, 2018
configure Update to SDL2, remove GTK and use the web for disc images Jun 10, 2018
configure.in Update build instructions Jun 10, 2018
depcomp First commit with files from Linux 0.0.13 release. Jun 10, 2018
install-sh First commit with files from Linux 0.0.13 release. Jun 10, 2018
missing First commit with files from Linux 0.0.13 release. Jun 10, 2018
mkinstalldirs First commit with files from Linux 0.0.13 release. Jun 10, 2018
reconf Update build instructions Jun 10, 2018

README

The unix version of BeebEm, writtin in C++ and SDL, has been compiled into WebAssembly using Emscripen.

You can find a working example at [https://beeb.webassembly.link].

BeebEm 0.0.13 has support for Emulation of BBC model B, B+, Integra Board and Master 128 and support for Acorn 65C02, Acorn Z80, Torch Z80 and Acorn 80186 second processors. 

To build, follow the guide at [https://kripken.github.io/emscripten-site/docs/getting_started/downloads.html] to install Emscripten. Then:

./reconf
automake --add-missing

emconfigure ./configure CXXFLAGS='-g -O3 -s USE_ZLIB=1 -s USE_SDL=2'
emmake make


To deploy as a WASM binary:

mkdir -p usr/local/share
cp -a data usr/local/share/beebem

cp src/beebem beebem.bc
emcc -O3 beebem.bc -o beebem.html --preload-file usr/local/share/beebem/ --use-preload-plugins -s TOTAL_MEMORY=256MB -s WASM=1 -s USE_SDL=2 -s USE_ZLIB=1

You will then have a .html .js .wasm and .data file.

The original BeebEm for Unix is at [http://beebem-unix.bbcmicro.com/]

PC Keyboard:
  F12 will bring up the menu
  Break key is BREAK

Mac keyboard:
  fn-F12 will bring up the menu (use fn-F1 etc. for the red function keys)
  fn-Backspace is BREAK (so shift-fn-backspace will !BOOT...)