Thanks for the reply and I'd love to see the operating system. My original simple OS idea was something far more hardcoded. That is, every task was predefined, not dynamically loaded etc. It would have a hardcoded limit of something like 4 tasks and would switch on them. This way their program locations, state information, stacks etc. would all be known at compile time. Basically it would be an operating system from the 1940s lol. Yours sounds far more sophisticated. The compiler design definitely seemed a bit odd but I can't blame you for that. See: https://github.com/mjsmith707/InterpretedCPU/tree/master/Assembler/Assembler for a single night assembler implementation of dubious quality . Shortly after working on yours I realized how much modification would probably be needed to properly implement structs and others. I'll probably revisit writing code for ProgCom when I've got some free time but I am highly allergic to large project assembly programming lol so instead of focusing on my weak point (compiler design) I decided to focus on something I'm a bit more comfortable with: A MIPS32R2 emulator. Only been working on it for about 3 days now but it supports (albeit unverified, needs unit testing) roughly 65% of the ISA. It is about the most basic of designs at this point. A directly interpreted, single-cycle, non-pipelined, non-caching implementation. It can however decode and execute mips32r2 machine code (testing with GCC cross-compiler) so it's off to a good start in that respect. I'm planning on implementing the coprocessor0 stuff in the near future and then interrupts. Both of those should be relatively easy. A proper MMU implementation will likely be a bit more difficult but I'll get to that, floating point and some basic device emulation later. The ultimate goal is full compatibility but I'd settle for just getting very very early Linux or NetBSD boot output as validation. Performance will certainly be lousy as its directly interpreted but as long as it's good enough to target with GCC I'll be happy. It's being written in C# (for eventual implementation as a KSP plugin) and all help is welcome if you're interested. I'm using Xamarin and dumped the whole project on it. https://github.com/mjsmith707/Standalone_MIPS_Emulator