This is a Haskell implementation of an emulator for the Tesselated Intelligence System processor defined in the Zachtronics game TIS-100. It uses the assembly save format from the game and the layout and I/O specification defined in another C-based open-source emulator implementation.
The emulation is not quite complete since it does not yet support the ANY and LAST ports but everything else should work (๐ค).
To run one of the examples:
stack run tissim -- examples/segment00150/segment00150.asm -c examples/segment00150/segment00150.cfg
To run tests:
stack test
Thanks to Derek Anderson for the layout and I/O format spec and Clara Schaertl Short et al for the best practices document.