Imagesource: https://mos.datatra.sh/
It's rare that an old concept is brought into the modern era as beautifully as in the following project by Roy Jacobs, who typically publishes code under the alias sagacity.
What's it about? As often is the case, the 6502 and its derivatives, and an assembler.
That might not sound particularly exciting at first. These things come a dime a dozen, in every shape, color, with orange or lemon flavor. But MOS is different. Very different.
First off, the assembler presents itself as a simple CLI tool. Alternatively – and this is where the real fun begins – one can use the VSCode extension. Doing so turns working with 6502 assembly into pure enjoyment. The dialect that Roy has designed is not only extremely modern. It supports just about everything a true 8-bit fan could desire: Imports, macros, segmentation, banking … you name it.
Where MOS really starts to shine is in the realm of testing. Once written and cross-assembled, code can be directly outfitted with unit tests, which can be executed right on the developer's local machine. In addition to the convenient assertions for all registers, flags, and RAM, you can also trace any values you want 🫠
MOS brings low-level assembly development into the modern age. Those who are accustomed to developing directly on the target machine with TurboMacroPro & Friends will find a journey into the future.
The gain in efficiency, trust in code, and fun is massive. Anyone doing anything with the 6502 can't get around MOS and its excellent documentation.
Read the full newsletter Issue #91 of 8bitnews.io: Merry Christmas 2023
Don't want to miss updates like that? Subscribe below and receive regular content that we only share with our subscribers.