TTK91Web
is fully fledged TTK91 emulator, development environment and debugger running locally in your browser.
This is made possible by ttk91-rs
, a rust library for parsing, compiling and emulating TTK91 code, and ttk91-wasm
which provides WebAssembly bindings for ttk91-rs
.
- Syntax highlighted editor based on Ace by cloud9.
- Syntax linting and helpful syntax error messages.
- Stepping instruction-by-instruction.
- Highlights the source code line currently in execution.
- Shows the state of registers and the stack in real-time.
Local development server can be started with npm run start
.
Running npm run build
builds the project, after which the directory dist/
contains all files needed for deployment. Notice that all application logic resides in the user's browser and the project has no back-end. All you need to do for a fully functioning production setup is to serve these files with Nginx, Apache or other standard HTTP server. You might need to configure the server to serve WebAssembly .wasm
files with the MIME type application/wasm
instead of application/octet-stream
.