From c1fdbef01ff06d4d9b518b360ecc1890a17d4c21 Mon Sep 17 00:00:00 2001 From: uvok Date: Mon, 5 Jan 2026 14:40:19 +0100 Subject: disas: Canonocalize AND dest, #0... to mov --- nandgame/assembler/disas.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'nandgame/assembler/disas.py') diff --git a/nandgame/assembler/disas.py b/nandgame/assembler/disas.py index 607537a..0256976 100755 --- a/nandgame/assembler/disas.py +++ b/nandgame/assembler/disas.py @@ -146,6 +146,12 @@ def fixup_ins(ins: int) -> list[str]: # all other jumps? <=, >=, =, <=> else: return ["jmp", "", "", "", ""] + if mnemonic == "and" and op1 == ZERO: + if jumpdest in ["jgt", "jlt", "jne", JUMP_NONE]: + newjmp = "" + else: + newjmp = "jmp" + return ["mov", dest, ZERO, "", newjmp] return [mnemonic, dest, op1, op2, jumpdest] -- cgit v1.2.3