module68 is a small virtual machine and assembler written in ALGOL 68. It runs .m68 text images and includes a minimal assembler for simple legacy .asm programs.
- Algol68G (
a68g) - POSIX shell for scripts and tests
On Ubuntu/Debian:
sudo apt-get install algol68gRun an existing .m68 image:
a68g src/module68_vm.a68 -- examples/hi.m68Assemble a legacy .asm file:
chmod +x scripts/build-asm.sh
scripts/build-asm.sh input.asm output.m68Enable VM tracing when needed:
a68g src/module68_vm.a68 -- --trace examples/hi.m68The current assembler supports a small instruction set and does not resolve labels or jumps:
mov r0, 72
sys 1
haltRun the shell testbench:
chmod +x tests/testbench.sh
tests/testbench.shsrc/module68_vm.a68— virtual machine implementationsrc/module68_asm.a68— minimal assemblerexamples/— sample assembly and.m68imagestests/testbench.sh— automated VM/assembler testbench