Designing Memory for My Bytecode VMThe memory layout for my bytecode VM: why instructions and RAM live in separate arrays, and how that maps to real desktop and embedded hardware.3 min read·mathijs-frank.hashnode.dev1Aug 11
Why my compiler won't optimize for youGCC optimized my C loop into a single instruction. What that means for hand-written assembly, and why my game's compiler is deliberately "dumb."5 min read·mathijs-frank.hashnode.dev1Jul 22
Rediscovering the three types of assembly instructionsDesigning my VM's instruction set, I rediscovered the same jump, memory access, and processing split used by RISC-V and ARM.3 min read·mathijs-frank.hashnode.dev1Jul 15
The cost of an instructionAssigning realistic cycle costs to VM instructions, and the determinism problem that comes with multiple robots acting in the same cycle.3 min read·mathijs-frank.hashnode.dev1Jul 15
Why I chose a bytecode VM instead of an AST walking interpreterWhy I chose a bytecode VM over an AST walking interpreter for the custom language in my programming game, and the tradeoffs it brings.2 min read·mathijs-frank.hashnode.dev1Jul 13