F# implmenetation of LC3 VM (Instruction Set Architecture) based on this tutorial.
From project root call dotnet build -c Release .\src\LC3VirtualMachine\
to build.
Building in Release
configuration. Debug
will throw a StackOverflowException since tail recursion optimisations are not performed during compilation.
Call ./src/LC3VirtualMachine/bin/Release/netcoreapp3.1/LC3VirtualMachine.exe -p ./exec/2048.obj
to execute one of the binaries (Use WSL
terminal if you have access to it).
Executable binaries are in the exec
folder. The 2 programs are 2048 and Rogue.