Full notes
Full Mnemonimov update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Gameplay
- Compatibility
- Performance
- Balance
Mnemonimov changes
This update expands MISA with 11 new instructions that cover two important use cases: function pointers and unsigned arithmetic. It also brings several bug fixes across the VM, Code Editor, and Terminal.
Note that this update introduces a compatibility change, as the [c]fsgn[/c] instruction now outputs a float. This means that when opening an existing project, you will be presented with the Compatibility Change Report. It highlights any compatibility changes that may affect your project and helps you bring it up to date with the current MISA specification.
MISA
(compatibility change) Modify the [c]fsgn[/c] instruction to output a float instead of an integer.
Add pa-relative variants of branching instructions: [c]cala[/c], [c]jmpa[/c], [c]jtra[/c], [c]jfsa[/c].
Add unsigned variants of arithmetic instructions where signedness affects the result: [c]mlhu[/c], [c]divu[/c], [c]remu[/c], [c]minu[/c], [c]maxu[/c], [c]clpu[/c].
Add a [c]fma[/c] instruction, an integer variant of [c]ffma[/c].
VM
Add a setting for capping VM performance to reduce CPU usage when running processing-intensive projects.
Fix vector instructions outputting wrong results when the destination overlaps with a source range.
Fix [c]sbpx[/c] instruction being able to draw a luma value [c]0[/c] instead of treating it as transparency.
Fix [c]pop[/c] instruction being able to modify the [c]zr[/c] register.
Fix an issue where one extra instruction is executed when stopping the VM.
Fix an issue where the VM can sometimes be run despite assembly errors.
Fix an issue where the [c]_input[/c] process sometimes runs at VM startup.
Code Editor
Fix an issue where opening a project sets the assembly code to [c] [/c] in certain cases.
Fix executing line indicator being cleared on save.
Fix executing line indicator staying visible after stepping over an [c]exit[/c] instruction when there's no other active process.
Terminal
Fix [c]traceback[/c] command freezing the game for a long period when the stack is corrupted.
Fix an issue where pressing [c]esc[/c] while the terminal is focused does not fully release input focus, potentially blocking some inputs to the VM.
Manual
Document how [c]sgn[/c] and [c]fsgn[/c] behave with the value [c]0[/c].
In the [c]syscall[/c] instruction reference, link the System Calls page.
In the Common Mistakes page of the Execution Model chapter, add an entry documenting that program behavior may vary across runs due to process scheduling being non-deterministic.
Source
Changelog.gg summarizes and formats this update. How we read updates.
