Building Commander X16 web emulator

Bash jimmyd 4 Views Size: 1.35 KB Posted on: Dec 18, 25 @ 8:28 AM
  1. 1# Build X16 emulator webassembly:
  2. 2
  3. 3# Install emscripten:
  4. 4# https://emscripten.org/docs/getting_started/downloads.html
  5. 5
  6. 6git clone https://github.com/emscripten-core/emsdk.git
  7. 7cd emsdk
  8. 8
  9. 9# Fetch the latest version of the emsdk (not needed the first time you clone)
  10. 10git pull
  11. 11
  12. 12# Download and install the latest SDK tools.
  13. 13./emsdk install latest
  14. 14
  15. 15# Make the "latest" SDK "active" for the current user. (writes .emscripten file)
  16. 16./emsdk activate latest
  17. 17
  18. 18# Activate PATH and other environment variables in the current terminal
  19. 19source ./emsdk_env.sh
  20. 20
  21. 21# Get emulator
  22. 22git clone https://github.com/x16community/x16-emulator.git
  23. 23
  24. 24# Get latest ROM build (can also be downloaded directly from github actions if logged in)
  25. 25gh run download -R https://github.com/x16community/x16-rom -n "ROM Image" --dir latest_rom
  26. 26
  27. 27# Copy ROM symbols (seems to not be needed?)
  28. 28cp latest_rom/*.h x16-emulator/src/.
  29. 29
  30. 30# Build emulator
  31. 31mkdir x16-emulator/build
  32. 32cp latest_rom/rom.bin x16-emulator/build
  33. 33cd x16-emulator/build
  34. 34emcmake cmake .. -DENABLE_FLUIDSYNTH=OFF -DENABLE_TRACE=OFF
  35. 35emmake make
  36. 36
  37. 37# Package emulator
  38. 38cd ..
  39. 39mkdir emu_binaries
  40. 40cp build/x16emu.data build/x16emu.html build/x16emu.js build/x16emu.wasm emu_binaries/
  41. 41mkdir emu_binaries/webassembly
  42. 42cp webassembly/styles.css webassembly/main.js webassembly/jszip.min.js emu_binaries/webassembly/
  43. 43file emu_binaries/*

Raw Paste

Comments 0
Login to post a comment.
  • No comments yet. Be the first.
Login to post a comment. Login or Register
We use cookies. To comply with GDPR in the EU and the UK we have to show you these.

We use cookies and similar technologies to keep this website functional (including spam protection via Google reCAPTCHA), and — with your consent — to measure usage and show ads. See Privacy.